A programming language whose source code is written in Tamazight Tifinagh keywords and identifiers — not translated from another syntax, but natively authored in Tifinagh.
ⵉⵙⵎ ⟵ "Seif"
ⵙⵙⵓⴼⵖ("ⴰⵣⵓⵍ " + ⵉⵙⵎ)
Output: ⴰⵣⵓⵍ Seif
AzulLang is an open-source compiler and tooling project created to celebrate Algerian and Amazigh heritage. Tamazight is a living language with deep roots across North Africa; this project explores what it means to program in Tifinagh — using real keywords, identifiers, and syntax — as a way to connect modern software with cultural identity.
The goal is not a toy translator, but a real language implementation: lexer, parser, AST, semantic analysis, interpreter, compiler backend, CLI, tests, and editor support.
Contributions and improvements are welcome! Whether you work on the compiler, write examples, improve docs, or suggest new language features — help is appreciated. See CONTRIBUTING.md.
Seif Sid Ali Maloufi — developer & creator
- Email: seif.maloufi@iremovalpro.com
- Instagram: @seifsidali
Requires Python 3.11+.
git clone https://github.com/GuidateTest/azullang.git
cd azullang
pip install -e ".[dev]"Optional LSP dependencies:
pip install -e ".[dev,lsp]"Create hello.azl:
ⵙⵙⵓⴼⵖ("ⴰⵣⵓⵍ ⴷ ⵓⵏⵍⵍⴰ!")
Run:
azul run hello.azl| Tifinagh | Meaning |
|---|---|
| ⵙⵙⵓⴼⵖ | |
| ⴰⵔⵎⴰⵙ | input |
| ⵎⴰ / ⵉⵍⵍⴰ / ⵏⵖ | if / then / else |
| ⴰⵔ / ⵜⴰⴳⴰⵔⴰ | while / end |
| ⵜⴰⵍⵖⴰ | function |
| ⵜⴰⵎⵙⵉⵔⵜ | return |
| ⟵ or ← | assign |
Full reference: docs/LANGUAGE.md · docs/GRAMMAR.md · docs/KEYWORDS.md
azul --version
azul run program.azl
azul check program.azl
azul compile program.azl # → build/program.py
azul compile program.azl -o out.py
azul watch program.azl
azul replcd vscode-extension
npm install
npm run compileThen open vscode-extension/ in VS Code and press F5 (Extension Development Host). Open any .azl file for syntax highlighting and live diagnostics (requires azul-lsp on PATH).
Configure in VS Code settings:
azullang.lsp.enabledazullang.lsp.path(default:azul-lsp)
.azl source (UTF-8)
↓
Lexer ← character scanner, Unicode identifiers
↓
Tokens
↓
Parser ← recursive descent, precedence climbing
↓
AST
↓
Semantic ← static checks
↓
Interpreter OR Compiler (Python backend)
↓
Execution
Modules live under src/azullang/:
lexer.py,parser.py,ast_nodes.pysemantic.py,interpreter.py,compiler.pydiagnostics.py,pipeline.py,cli.pylsp_server.py(optional)
- No significant-whitespace blocks — blocks use explicit
ⵜⴰⴳⴰⵔⴰ - No arrays, structs, modules, or imports
- No type system (dynamic typing only)
- Compiler backend targets Python only
- LSP: diagnostics only (no autocomplete/hover yet)
- Watch mode polls file mtime (simple, cross-platform)
- Native bytecode VM backend
- LSP autocomplete and hover docs
- Standard library in Tifinagh
- Formatter (
azul fmt) - Package manager for
.azlmodules
pytestWe welcome pull requests, issues, and ideas. Please read CONTRIBUTING.md before contributing.
Built with care for Algerian heritage and the Amazigh language community. ⵜⴰⵏⵎⵎⵉⵔⵜ!
MIT — see LICENSE. Copyright © 2026 Seif Sid Ali Maloufi.