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)
A small programming language where everything is pass-by-value launched on January 25, 2026 with 91 votes, #383 of 14,585 launches that month and more than 95% of that year's launches.
In plain words
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 Interpreters before diverging significantly. It uses Cranelift for JIT compilation and LALRPOP for parsing. Designed for programmers interested in language design, it represents a learning project created almost entirely without AI assistance.
written from the facts on this page · September 2026
From the sources
A simple interpreted programming language where everything is pass-by-value - Jcparkyn/herd
Herd is a simple interpreted programming language where everything is a value. Disclaimer: This is a hobby language, and you probably shouldn't use it for anything important. In Herd, everything is pass-by-value, including lists and dicts. This means that when you pass a list or dict to a function, you can guarantee that the function won't modify your copy . You can modify variables locally just like you would in an imperative language, but there will never be any side-effects on other copies of the value. var foo = { a : 1 }; var bar = foo; // make a copy of foo set bar.a = 2 ; // modify bar (makes a copy) println foo.a bar.a; // prints 1 2 How does it work? All reference types in Herd…from github.com
Does a similar job
all alternatives →
I'm making a dynamic language in Rust2022 · github.com · ▲184An 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…
- RL
- MWMy "weekend" project, an ML dialect and compiler2012 · texodus.github.com · ▲68
“Crafting Interpreters” chapter, control flow and Turing-completeness2017 · craftinginterpreters.com · ▲116
val – An arbitrary precision calculator language2025 · github.com · ▲34Wrote 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 :)
Maybe Haskell2015 · books.thoughtbot.com · ▲60See what it’s like to program in a language without null.
More ai this month
the category →



Paintings by AI models: programs run through a simulation of oil paint.
AI · 20d ago · stillwet.art

PixVerse R2▲381A real-time world model you can explore and change
AI · 28d ago · world.pixverse.video
Source: Show HN post ↗
Launched alongside, January 2026
the whole month →- IN
Hey HN! I wanted to share something I built over the last few weeks: isometric.nyc is a massive isometric pixel art map of NYC, built with nano banana and coding agents. I didn't write a single line of code. Of course no-code doesn't mean no-engineering. This project took a lot more manual labor than I'd hoped! I wrote a deep dive on the workflow and some thoughts about the future of AI coding and creativity: http://cannoneyed.com/projects/isometric-nyc
AI · Jan 2026 · cannoneyed.com




Automatic AI-powered code reviews the moment you open a PR
Dev tools · Jan 2026 · kilo.ai
