Home
Source Code: https://git.bouvais.lu/adrien/zigma
Github mirror: https://github.com/MrBounty/zigma
Zigma is a programming language designed to make scientific computing safer and easier. It attach dimensions and scales directly to variables, performs strict Dimensional Analysis at compile-time. If you try to add meters to seconds, your code literally will not compile.
What it looks like
Write code that looks like a physics textbook.
g = 9.81 m/s2
t = 0..10 s step 0.1
v0 = 20.0 m/s
// Zigma automatically derives that 'y' is in [m]
y = (v0 * t) - (0.5 * g * t^2)
// Compile-Time Error: Cannot add [m] to [s]
wrong = y + t
Key Features
- Math-First Syntax: Clean, readable syntax designed to feel like a math notebook.
- Dimension First: Attach dimensions to variable and perform dimensional analysis.
- Automatic scale: Add meter to inch and let Zigma to the conversion.
- Python and Jupyter: Zigma was though to be use in Jupyter notebook along Python and Numpy.
- Fast: Use Zig with SIMD or WebGPU.
- Uncertainty Propagation: Natively handle confidence intervals (
20.0 +/- 0.5 m/s) in math operations.
How to navigate these docs
The documentation is organized using the Diátaxis framework, split into four tabs at the top of the page depending on what you are trying to achieve:
- 🎓 Tutorials: Step-by-step lessons to learn Zigma from scratch.
- 🛠️ How-To Guides: Practical guides for solving specific problems.
- 📖 Reference: Technical encyclopedia of the language.
- 🧠 Explanation: Deep dives into how Zigma works under the hood.