Languages Written in Rust
This is a (probably incomplete) list of languages implemented in Rust. It is intended as a source of inspiration and comparison, and as a directory of potentially interesting projects in this vein.
What Can Be Included?
- Is it a language?
- Is it written in Rust?
Then it can be included in this list!
List of Languages
Name | Description | ||
---|---|---|---|
Deno | 88,397 | A modern runtime for JavaScript and TypeScript. | |
Rust | 78,830 | Empowering everyone to build reliable and efficient software. | |
Parcel JavaScript Transformer | 42,109 | The zero configuration build tool for the web. |
|
swc | 26,551 | Rust-based platform for the Web | |
nu | 25,568 | Scripting language of nushell. The goal of this project is to take the Unix philosophy of shells, where pipes connect simple commands together, and bring it to the modern style of development. Thus, rather than being either a shell, or a programming language, Nushell connects both by bringing a rich programming language and a full-featured shell together into one package. | |
RustPython | 14,414 | A Python Interpreter written in Rust | |
Gleam | 4,720 | ||
Melody | 4,072 | Melody is a language that compiles to regular expressions and aims to be more easily readable and maintainable | |
Boa | 3,813 | Boa is an embeddable and experimental Javascript engine written in Rust. Currently, it has support for some of the language. | |
Parcel CSS | 3,351 | An extremely fast CSS parser, transformer, bundler, and minifier written in Rust. | |
Kind | 3,025 | A next-gen functional language | |
Artichoke | 2,863 | ||
Gluon | 2,783 | A static, type inferred and embeddable language written in Rust. | |
Rhai | 2,589 | Rhai - An embedded scripting language for Rust. | |
Jakt | 2,484 | The Jakt Programming Language | |
Erg | 2,130 | A statically typed language that can deeply improve the Python ecosystem | |
Scryer Prolog | 1,655 | A modern Prolog implementation written mostly in Rust. | |
Ante | 1,592 | A safe, easy systems language | |
Dyon | 1,555 | A rusty dynamically typed scripting language | |
Mun | 1,518 | Source code for the Mun language and runtime. | |
goscript | 1,421 | An alternative implementation of Golang specs, written in Rust for embedding or wrapping. | |
Fe | 1,408 | Emerging smart contract language for the Ethereum blockchain. | |
Nickel | 1,314 | Better configuration for less | |
Differential Datalog | 1,248 | DDlog is a programming language for incremental computation. It is well suited for writing programs that continuously update their output in response to input changes. A DDlog programmer does not write incremental algorithms; instead they specify the desired input-output mapping in a declarative manner. | |
Rune | 1,144 | An embeddable dynamic programming language for Rust. | |
frawk | 1,069 | an efficient awk-like language | |
Tao | 880 | A statically-typed functional language with generics, typeclasses, sum types, pattern-matching, first-class functions, currying, algebraic effects, associated types, good diagnostics, etc. | |
CSML | 660 | CSML is an easy-to-use chatbot programming language and framework. | |
SPWN | 627 | A language for Geometry Dash triggers | |
KCLVM | 474 | A constraint-based record & functional language mainly used in configuration and policy scenarios. | |
Wu | 440 | ||
Leo | 401 | ||
Sway | 389 | ||
Starlark | 388 | A Rust implementation of the Starlark language | |
jsparagus | 372 | Experimental JS parser-generator project. | |
Koto | 326 | A simple, expressive, embeddable programming language, made with Rust | |
EndBASIC | 232 | BASIC environment with a REPL, a web interface, a graphical console, and RPi support written in Rust | |
Orion | 229 | Orion is a high level, purely functional programming language with a LISP based syntax. | |
Inko | 217 | A language for building concurrent software with confidence. This is a read-only mirror of https://gitlab.com/inko-lang/inko | |
Tokay | 197 | Tokay is a programming language designed for ad-hoc parsing, inspired by awk. | |
Lurk | 192 | None | |
Veryl | 162 | Veryl: A Modern Hardware Description Language | |
crafting-interpreters-rs | 160 | Crafting Interpreters in Rust | |
TablaM | 154 | The practical relational programing language for data-oriented applications | |
Steel | 121 | An embedded scheme interpreter in Rust | |
Butter | 114 | A tasty language for building efficient software. Currently work in progress! | |
Antimony | 103 | The Antimony programming language | |
Boson | 103 | A hybrid programming language written in Rust. | |
Calcit | 71 | Lisp compiling to JavaScript ES Modules | |
rtforth | 65 | Forth implemented in Rust for realtime application | |
Laythe | 59 | A gradually typed language originally based on the crafting interpreters series | |
Calypso | 57 | Calypso is a mostly imperative language with some functional influences that is focused on flexibility and simplicity. | |
Chili | 41 | General-purpose, compiled programming language, focused on productivity, expressiveness and joy of programmingโข | |
tox | 35 | Tox is a statically typed version programming language that is written in rust. | |
Foolang | 33 | A toy programming language. | |
ucg | 31 | A Universal Configuration Grammar | |
Ellie | 21 | Ellie is a type-safe programing language that runs on embedded and sandboxed environments. | |
Pr47 | 21 | The formal development repository for Pr47 | |
Wright | 18 | The wright programming language (WIP) | |
The Force | 15 | A Star Wars themed programming language | |
Sligh | 9 | A language for model transformation | |
Tethys | 6 | A toy functional programming language with a System F-based core calculus | |
loxidation | 4 | Lox bytecode compiler and VM in Rust | |
PopperLang | 0 | Popper is an functional programming language designed to simplify the development process by providing a clear and concise syntax written in Rust | |
Passerine | 1,013 | A small extensible programming language designed for concise expression with little code. | |
Ketos | 723 | Lisp dialect scripting and extension language for Rust programs | |
Astro | 680 | A fun safe language for rapid prototyping and high performance applications | |
Pikelet | 590 | A friendly little systems language with first-class types. Very WIP! |
|
Starlight | 461 | JS engine in Rust | |
CalcuLaTeX | 379 | A pretty printing calculator language with support for units. Makes calculations easier and more presentable with real time LaTeX output, along with support for units, variables, and mathematical functions. | |
Wain | 333 | WebAssembly implementation from scratch in Safe Rust with zero dependencies | |
Monkey-Rust | 296 | An interpreter for the Monkey programming language written in Rust | |
Sphinx | 287 | An intepreter for a simple dynamic language written in Rust | |
Eldiro | 212 | Learn to make your own programming language with Rust | |
atto | 140 | An insanely simple self-hosted functional programming language | |
Minitt | 102 | Dependently-typed lambda calculus, Mini-TT, extended and implemented in Rust | |
Voile | 89 | Dependently-typed row-polymorphic programming language, evolved from minitt-rs | |
Jazz | 86 | Jazz - modern and fast programming language. | |
Rust-lisp | 83 | A small Lisp interpreter written in Rust. Work in progress. | |
Rust-Prolog | 78 | Rust implementation of prolog based on miniprolog: http://andrej.com/plzoo/html/miniprolog.html | |
ssp16asm | 63 | A collection of development tools targetting SEGA's SVP chip found in the Mega Drive/Genesis version of Virtua Racing. | |
Darksecond/lox | 59 | A rust implementation of the lox language | |
rulox | 55 | Implementation in Rust of lox, the language described in Crafting Interpreters | |
Crunch | 51 | A strongly & statically typed systems level language focused on ease of use, portability and speed, built for the modern age. | |
Blazescript | 48 | AOT compiled object oriented programming language | |
rodaine/rlox | 36 | Lox Interpreter/REPL written in Rust | |
Schwift | 30 | An actual programming language for some reason | |
lox-rs | 27 | A Lox Interpreter in Rust | |
Lisp.rs | 26 | Scheme Interpreter in Rust | |
Synthizer | 20 | A simple, experimental functional language for real time additive audio synthesis. | |
rctcwyvrn/rlox | 16 | Rust implementation of the bytecode VM (clox) from https://craftinginterpreters.com/ | |
cat-lox | 15 | A tree-walk lox interpreter written in Rust. | |
Arn | 13 | A functional golfing language | |
Radicle | 11 | an ur-lisp interpreter written in Rust | |
Lang | 8 | An imperative programming language written in Rust | |
loxr | 7 | A Rust interpreter for the Lox language | |
minipyth | 7 | A minimalist programming language | |
Iron | 6 | A Lisp-based language written in Rust | |
radogost/rlox | 6 | An implementation of lox from the great book http://craftinginterpreters.com implemented in Rust | |
loxrs | 6 | [old] Crafting Interpreters in Rust (Part II: A tree-walk interpreter) | |
relox | 6 | Rust port of the jlox interpreter | |
rox | 5 | A Rust port of Crafting Interpreters | |
sasurau4/lox-rust | 5 | Interpreter for lox written by rust | |
5 | What if identifiers could be anything? Langjam submission | ||
justinmayhew/lox | 4 | A Rust implementation of Lox from Crafting Interpreters | |
lax | 3 | a lox interpreter | |
yarli | 3 | Yet Another Rusty Lox Interpreter | |
cloxrs | 2 | Lox implementation written in Rust | |
nt591/lox-rust | 2 | A Rust implementation of the Crafting Interpreters bytecode VM | |
roxt | 2 | A Lox interpreter written in Rust |
*: Parcel is a large project of which the JavaScript transformer (written in Rust) is a small part. The "stars" number here reflects the whole project, which is broader than a programming language project.