Welcome to Mux
Mux is a statically-typed, reference-counted programming language that combines Go-like minimalism with Rust-inspired safety.
Why Mux?
- Simple yet powerful: Combines Go-like minimalism with Rust-inspired safety
- Strong static typing: Helps catch errors early and ensures safer code
- LLVM-powered: Fast compilation and native performance
- Flexible memory management: Ease of use through reference counting
- Extensible: Designed to evolve with features like traits, concurrency, and a standard library
Quick Example
Language Features
- Static type system with type inference using
auto - Pattern matching with guards for clear control flow
- Generics with compile-time monomorphization
- Error handling with
result<T, E>andoptional<T> - Memory safety through reference counting
- No semicolons - clean, readable syntax
- Collection literals for lists, maps, and sets
- Interfaces for static bounds and owned dynamic dispatch
Project Status
Mux is currently in active development. The language specification, compiler, and tooling are evolving. Expect breaking changes and incomplete features as I work towards a stable release.
Current Limitations:
- Compiler v0.13.0 includes
mux lsp. See editor setup for configuration. - Mux 0.12.0 and later include a source formatter. See Formatting Mux source.
- Standard library is now available and published, with continued expansion planned
- Breaking changes are expected
Community
License
Mux is licensed under the MIT license.