6 releases

0.1.0 Jan 4, 2023
0.0.5 May 6, 2020
0.0.4 Apr 4, 2020
0.0.3 Oct 30, 2019
0.0.1 Mar 20, 2019

#962 in Parser implementations

43 downloads per month
Used in 5 crates


5.5K SLoC

Mech is a language for developing data-driven, reactive systems like robots, games, and animations. It makes composing, transforming, and distributing data easy, allowing you to focus on the essential complexity of your project.

You can try Mech online at https://mech-lang.org/try.

Usage and installation instructions can be found in the documentation or the main Mech repository.

Be sure to follow on our blog(RSS)!


A toolchain for compiling textual Mech source code.


  • parser - converts text into a parse tree.
  • ast - converts parse tree into abstract syntax tree.
  • compiler - converts abstract syntax tree into blocks.
  • formatter - converts a parse tree into text.

This branch also contains various editor modes that implement the language server protocol. Modes are available for:

  • VS Code
  • EMACS (Coming soon...)
  • VIM (Coming soon...)

Project Status

Mech is currently in the beta stage of development. This means that the language is at a suitable stage for a wider audience. While most language feature implementations are started, none are finished, and some new features may, while others could be removed. Backwards and forwards compatibility of Mech programs is not guaranteed at this time.


Apache 2.0


~185K SLoC