The Domain Specific Language for math.
Project description
Mathsys
Mathsys is an educational math language for students and teachers who want to write, read, and experiment with mathematics in a clear, human-readable way.
It looks like math, not code -- but it can still be checked, validated and converted into LaTeX or runnable programs for interactive exploration.
Example
x = 2 + 3*7/4
@Number e == lim n->inf of (1 + 1/n)^n^
@Tensor u, v
u*v
compiles to:
$$x=2.0+\frac{3.0\cdot 7.0}{4.0}$$ $$\pi \equiv 3.14159$$ $$e\equiv \lim_{\substack{n\to \infty }}\left( 1.0+\frac{1.0}{n}\right) ^{n}$$ $$\overline{u}\cdot \overline{v}$$
See more examples in the documentation.
Why Mathsys for Learning?
- Clear, structured expressions instead of dense symbols
- Can be converted directly to LaTeX
- Intuitive to write and read, whilst still being mathematically rigorous
- Can be used online without any local installation
- Allows for greek letters, multicharacter variables and easy syntax
Try it now
Online
Local installation
Install the latest version via pip:
pip install mathsys
Compile a Mathsys file to different targets with:
mathsys <target> <filename>.msX
where .msX is the file extension stands for .ms1, .ms2, .ms3 ... (versioned), .msr or .msd (release and dev).
mathsys.release is the last stable version, whilst mathsys.dev is the latest version published.
[!NOTE] To view all available targets, run
mathsys help <filename>.msX.
[!WARNING] You'll need Rust installed in order to compile to
nativetarget, with the nightly toolchain, and thewasm32-unknown-unknowntoolchain for compiling to WebAssembly. The compiler will also try to optimize the executable so it is recommended that you installwasm-optandupx.
Project Status
Mathsys is actively developed with regular releases every few weeks. This project is still in its early stages, so expect major shifts and changes. Most features aren't close to being developed yet.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mathsys-6.tar.gz.
File metadata
- Download URL: mathsys-6.tar.gz
- Upload date:
- Size: 105.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6e3603f6da83e0da698e83b089f7e5ef365bbd2fff1e768d07050b216151be00
|
|
| MD5 |
c73470f114d64b4ba575badd545f6e3f
|
|
| BLAKE2b-256 |
2c99f6d1d80804c66700d22b33831e97eb2f396b2132a00c80103ce8863403ae
|
File details
Details for the file mathsys-6-py3-none-any.whl.
File metadata
- Download URL: mathsys-6-py3-none-any.whl
- Upload date:
- Size: 142.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
264dfd0573ec7891e840eda3b153395e77148420c59d4fd552759c584cce9262
|
|
| MD5 |
a641a89afafddc0a57c39ad3cd588198
|
|
| BLAKE2b-256 |
10992e433b29c2ec255a59729cd764df89aeed22b24a20ba721e25bcb54d340b
|