This project uses the Zig
v0.15.2
This project aims to integrate the Mufi-Lang compiler with the Zig language by using the Zig Build system. We hope to integrate more features with this language and see how nicely we can utilize both languages in unity. The advantage of Zig's Build system is easy cross-compatibility and caching, and as we integrate more, we can ensure more memory safety.
- Improved REPL Experience: The interactive shell now provides a cleaner experience by not echoing characters while typing
- Hash Table Syntax Change: Hash tables now use
#{}syntax to differentiate from float vectors ({})
- Float Vectors: Use curly braces
{}- Example:var vector = {1, 2, 3, 4, 5} - Hash Tables: Use hash-prefixed curly braces
#{}- Example:var dict = #{"key": "value", "name": "John"}
$ mufiz --help
-h, --help
Displays this help and exit.
-v, --version
Prints the version and codename.
-r, --run <str>
Runs a Mufi Script
-l, --link <str>
Link another Mufi Script when interpreting
--repl
Runs Mufi Repl systemView MufiZ Project Roadmap to see current goals I am currently working on or planning to implement for the current or next versions.
| Version | Codename | Status |
|---|---|---|
| 0.1.0 | Baloo | Archived |
| 0.2.0 | Zula | Released |
| 0.3.0 | Iris | Released |
| 0.4.0 | Voxl | Released |
| 0.5.0 | Luna | Released |
| 0.6.0 | Mars | Released |
| 0.7.0 | Jade | Released |
| 0.8.0 | Ruby | Released |
| 0.9.0 | Kova | Released |
| 0.10.0 | Echo | Latest |
To support various toolchains, we have added the following features to the project, which can be enabled or disabled using the zig build command:
-Denable_net- Enables thenetmodule for the MufiZ standard library.-Denable_fs- Enables thefsmodule for the MufiZ standard library.-Dsandbox- Enables sandbox mode which limits execution to REPL only.
- Enhanced REPL Input: The interactive shell now features improved input handling with non-echoing input for a cleaner experience
- Input Visibility: Commands are displayed after execution to maintain clarity and aid debugging
- Disabled Echo: Input characters are no longer echoed back while typing in the REPL, improving readability
- Simplified Implementation: Streamlined code for better maintainability and performance
- Terminal Handling: Groundwork for native Zig termios operations without C dependencies
- homebrew-mufi: The official Homebrew Tap for MufiZ.
- mufi-bucket: The official Scoop bucket for MufiZ.