Mech is a language for building data-driven and reactive systems like robots, games, user interfaces, and more. It simplifies composing, transforming, and distributing data, so you can focus on the core complexities of your project.
Try Mech online in your browser or stay updated through our blog.
Download the latest release for your platform here.
To build Mech from source, you’ll first need to install Rust (make sure to install a recent version on the nightly release channel).
Then follow the instructions below to compile the Mech toolchain, bundled in a single executable called mech
:
git clone https://gitlab.com/mech-lang/mech
cd mech
cargo build --bin mech --release
New to Mech? Start with Learn Mech in Fifteen Minutes.
Comprehensive documentation is available at mech-lang.org and open-sourced on GitHub.
The Mech community stays active at a few places around the Internet:
- 👾 Discord - for live chat
- 🐙 GitHub - for code and issues
- 📺 YouTube - for video tutorials
- 🛸 Reddit - for help and general discussion
- 📧 Mailing List - for dev discussion
Feel free to stop by and introduce yourself -- we're happy to meet new users and answer questions!
Mech v0.2 is currently beta status, meaning most intended features are implemented, but rough edges abound and there is a general lack of documentation. Development is focused on testing and documentation.
A Brief Roadmap:
- ☑️ v0.1 - proof of concept system - minimum viable language implementation
- 📍 v0.2 - data specification - formulas, defining and manipulating data
- ☐ v0.3 - program specification - functions, modules, state machines
- ☐ v0.4 - system specification - tools, distributed programs, capabilities
For more details, read the ROADMAP.
A new version of Mech is released every week.
Mech should be considered unstable and therefore unfit for use in critical systems until v1.0 is released.
Licensed under Apache 2.0.