Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mech-lang/mech
🦾 Main repository for the Mech programming language. Start here!
https://github.com/mech-lang/mech
compiler data-processing ide language live-programming programming-environment programming-language reactive-programming robotics
Last synced: 3 months ago
JSON representation
🦾 Main repository for the Mech programming language. Start here!
- Host: GitHub
- URL: https://github.com/mech-lang/mech
- Owner: mech-lang
- License: apache-2.0
- Created: 2018-08-13T16:54:37.000Z (almost 6 years ago)
- Default Branch: main
- Last Pushed: 2023-10-18T19:43:18.000Z (9 months ago)
- Last Synced: 2024-03-20T01:43:40.614Z (4 months ago)
- Topics: compiler, data-processing, ide, language, live-programming, programming-environment, programming-language, reactive-programming, robotics
- Language: Rust
- Homepage: http://mech-lang.org
- Size: 1.48 MB
- Stars: 198
- Watchers: 6
- Forks: 10
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Lists
- programming-languages - Mech - Language for developing data-driven, reactive systems like animations, games, and robots. ([Web](http://mech-lang.org/)) (Other)
README
Mech is a language for developing **data-driven**, **reactive** systems like animations, games, and robots. 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 [try.mech-lang.org](http://try.mech-lang.org).
Usage and installation instructions can be found in the [documentation](https://mech-lang.org/page/learn/) or the [main Mech repository](https://github.com/mech-lang/mech).
Read about progress on our [blog](https://mech-lang.org/blog/), and follow us on Twitter [@MechLang](https://twitter.com/MechLang).
## Welcome
This repository serves as a table of contents for the constellation of tools and utilities that comprise the Mech programming language:
1. [Core](https://gitlab.com/mech-lang/core) - The language runtime. It's a small dataflow engine that accepts transactions of changes, and applies them to a compute network.
2. [Syntax](https://gitlab.com/mech-lang/syntax) - A compiler for a textual Mech syntax.
3. [Program](https://gitlab.com/mech-lang/program) - Coordinates distributed Mech cores as a coherent program.## Documentation
Documentation is hosted online at [mech-lang.org](http://docs.mech-lang.org), and is open sourced on [GitHub](http://github.com/mech-lang/docs).
- Mech platform references
- Syntax
- Ecosystem
- Architecture
- User guides
- Tutorials
- How-Tos
- Mech for X## Installation
### From Binary
You can download the latest release for your platform [here](https://github.com/mech-lang/mech/releases). Or, if you have Rust's Cargo tool installed you can use the following command:
```bash
cargo install mech
```### From Source
You will need to install [Rust](https://www.rust-lang.org/learn/get-started) on a recent nightly release, and [wasm-pack](https://rustwasm.github.io/wasm-pack/installer/). When those are installed, follow these instructions:
```bash
git clone https://gitlab.com/mech-lang/mech -b v0.1-beta --recurse-submodules
cd mech
wasm-pack build wasm-notebook --target web
cargo build --bin mech --release
```To update submodules:
```bash
git submodule update --force --recursive --init --remote
```## Project Roadmap
Mech is currently in the **alpha** stage of development. This means that while some features work and are tested, programs are still likely to crash and produce incorrect results. There is a "happy path" that works well, but it's quite narrow. We've implemented many language features, but most are incomplete and some are not yet implemented at all.
The project will hit the **beta** stage of development when all currently planned features have been implemented at least as a prototype. The current target for this milestone is October 2022.
See [ROADMAP.md](ROADMAP.md) for more.
## License
Apache 2.0