AI · alternatives · 2026
24 alternatives to A small programming language where everything is pass-by-value
This is a hobby project of mine that I started a few years ago to learn about programming language implementation. It was created 95% without AI, although a few recent commits include code from Gemini CLI. I started out following Crafting Interpreters, but gradually branched off that until I had almost nothing left in common. Tech stack: Rust, Cranelift (JIT compilation), LALRPOP (parser). Original title: "A small programming language where everything is a value" (edited based on comments)
This is a hobby programming language built in Rust that implements pass-by-value semantics throughout. The creator developed it over several years to learn language implementation, initially following Crafting… Below are 24 products that do a similar job, ranked by how close each is in meaning and then by launch-day votes.
- 1

An implementation of a dynamic programming language in Rust. Includes: Parser/Compiler, REPL, Virtual Machine, Bytecode Disassembler This started out as a learning project to teach myself Rust. It has grown into a decently substantial piece of software and I've learned quite a bit in the process! Some neat things: + A garbage collector that can store dynamically sized types without any double-indirection (i.e. I have my own Box implementation with manual alloc/dealloc) + The smart pointer used to reference GCed data is a thin pointer. The ptr metadata needed for DSTs is stored in…
2022 · github.com · its alternatives →
- 2RL
- 3

Hi friends, I started casually working on scrapscript in 2015. I built a few compilers over the years to test out various ideas/implementations, and I think I'm finally happy with the overall design. The code is not public yet. Email me at [email protected] if you're interested in joining the core team later this year. Let me know if you have any questions or feedback :)
2023 · scrapscript.org · its alternatives →
- 4IW
The book page links to a blog post that explains how I got about it (and has a link to sample content), but the TL&DR is that I could not find a lot of books that were on "our" history _and_ were larded with technical details. So I set about writing one, and some five years later I'm happy to share the result. I think it's one of the few "computer history" books that has tons of code, but correct me if I'm wrong (I wrote this both to tell a story and to learn :-)). My favorite languages are Smalltalk and Lisp, but as an Emacs user, I've been using the latter for much longer and for my…
Feb 2026 · berksoft.ca · its alternatives →
- 5MW
2012 · texodus.github.com · its alternatives →
- 6

2017 · craftinginterpreters.com · its alternatives →
- 7

I made this simple language over the past year, and it's time for me to say it's "done" (for now) and focus on other projects. I've struggled to answer the question "what is this language for?" other than "it's just for me" — and that's probably good enough. But I also wanted to make something "complete" that others could use if they wanted to. Writing my own language was an incredibly rewarding experience, and I'd recommend everyone trying it. Let me know if you have any questions or feedback, and please share your own experience if you've also made a language.
2023 · cassette-lang.com · its alternatives →
- 8

Wrote this to learn more about the `chumsky` parser combinator library, rustyline, and the `ariadne` error reporting crate. Such a nice DX combo for writing new languages. Still a work in progress, but I thought I'd share :)
2025 · github.com · its alternatives →
- 9

A few weeks ago I saw a post about someone converting an entire C++ codebase to Rust using AI in under two weeks. That inspired me — if AI can rewrite a whole language stack that fast, I wanted to try building a programming language from scratch with AI assistance. I've also been noticing growing global interest in Korean language and culture, and I wondered: what would a programming language look like if every keyword was in Hangul (the Korean writing system)? Han is the result. It's a statically-typed language written in Rust with a full compiler pipeline (lexer → parser → AST →…
Mar 2026 · github.com · its alternatives →
- 10

See what it’s like to program in a language without null.
2015 · books.thoughtbot.com · its alternatives →
- 11AR
2021 · guillaume.baierouge.fr · its alternatives →
- 12

A complete compiler for a simple language (in less than 150 LoC) - 00_readme.md
2022 · gist.github.com · its alternatives →
- 13

A minimal viable programming language on top of liblgpp - codr7/alang
2021 · github.com · its alternatives →
- 14

Sage is a Rust-like programming language built on a brainfuck-inspired VM with LLVM-like properties. https://github.com/adam-mcdaniel/sage Check out the web-demo to run the compiler in the browser, along with a graphical example using JavaScript interop! https://adam-mcdaniel.net/sage Sage is designed to be portable, but also useful. To prove its usefulness, I used it to implement a user-space for a new operating system: SageOS https://github.com/adam-mcdaniel/sage-os The language also runs on embedded devices, like the flipper zero!
2024 · github.com · its alternatives →
- 15

A Rust macro that parses Java-like syntax and runs it as a Rust program
2018 · gitlab.com · its alternatives →
- 16GI
Hi all! I'm going into my freshman year, and figured that the best way to prepare for the intro to programming Racket course would be to implement my own garbage-collected, dynamically typed, functional programming language in C ;) Anyways... here's the repo: https://github.com/liam-ilan/crumb I started learning C over the summer, so I still have a whole lot to learn... Any feedback would be greatly appreciated! :D
2023 · its alternatives →
- 17AL
2013 · np-lang.org · its alternatives →
- 18

Actor runtime and distributed systems framework for Rust - LeonHartley/Coerce-rs
2019 · github.com · its alternatives →
- 19IM
2013 · lispwebtales.ppenev.com · its alternatives →
- 20

A minimalist type-inferred programming language with procedural macro support - murisi/L2
2017 · github.com · its alternatives →
- 21

My implementation of Thorsten Bell's book (Writing an Interpreter in Go) - actuallyachraf/monkey-giggle
2020 · github.com · its alternatives →
- 22

I spent the past 2 weeks making this toy programming language. I basically forked the Go scanner/parser, and changed the syntax to have functions return a single value. This enable proper Result/Option type to be used as well as propagating errors with an operator. I also wanted to have short "type inferred" anonymous functions to be able to use functions like Map/Reduce/Filter, without having to use 100 characters to specify the types.
2025 · github.com · its alternatives →
- 23ID
2013 · rhoscript.com · its alternatives →
- 24

Meta programming utilities for C++14. Merged in matt-42/lithium - matt-42/iod
2014 · github.com · its alternatives →
Also compare
- I'm making a dynamic language in Rust alternatives
- Risp – Lisp in Rust alternatives
- ScrapScript – A tiny functional language for sharable software alternatives
- I wrote a technical history book on Lisp alternatives
- My "weekend" project, an ML dialect and compiler alternatives
- “Crafting Interpreters” chapter, control flow and Turing-completeness alternatives
Ranked by how close each launch is in meaning, then by votes. Prices were read from each product’s own site when checked and can change. Refine with your own description →