# Language notes

These notes introduce the MATLAB/Octave-like language used by the app. They
describe selected supported behavior, not complete MATLAB or Octave
compatibility. The installed `mathjslab` package owns parsing, values and
evaluation.

- [Arrays, indexing and arithmetic](arrays.md)
- [Text and quote styles](strings.md)
- [Linear indexing and storage order](storage-order.md)
- [Runnable examples](../../example/README.md)

Use the shell's `help` command and the self-checking example catalogue for
specific functions. Features and numerical behavior must be verified against
the installed kernel. The catalogue implements many algorithms explicitly
instead of assuming the availability of MATLAB toolboxes or every Octave API.

The earlier manual drafts have been consolidated into these notes. The manual's
existing permission notice is preserved below.

> Copyright © 2016-2023 The MathJSLab Project Developers
>
> Permission is granted to make and distribute verbatim copies of this manual
> provided the copyright notice and this permission notice are preserved on all
> copies.
>
> Permission is granted to copy and distribute modified versions of this manual
> under the conditions for verbatim copying, provided that the entire resulting
> derived work is distributed under the terms of a permission notice identical
> to this one.
>
> Permission is granted to copy and distribute translations of this manual into
> another language, under the above conditions for modified versions.
