A small programming language where everything is pass-by-value
Get picks like this daily. Today's launch numbers, the top launches, AI and tech news, and a daily opportunity pick, straight to your inbox.
Want to reach these readers? Sponsor an issue.
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)
HN · launched Jan 25, 2026 · 91 upvotes (top 11%) · 0 views
Niche: programming languages and interpreters · 161 launches, 2 in the last 7 days ▼ -75% · Explore this niche →
Category and tags
- Horizontal
- Dev tools
- Developer
- Not AI
- Hobby / open-source project
Visit website ↗ Source listing ↗
More like this: all 161 launches in programming languages and interpreters →
Could you build this?
No Writing a custom programming language compiler or bytecode virtual machine with custom semantics requires specialized theoretical and practical knowledge of compiler design.
What it would actually take: A real implementation involves building a custom lexer, parser (AST generator), semantic analyzer, and either an AST-walking interpreter or a bytecode VM with a custom runtime and garbage collection / memory management that enforces strict pass-by-value semantics across arbitrary data structures. It requires expertise in compiler construction, formal grammar definitions, and low-level runtime systems.
Discussion
20 comments analyzed.
Competitors mentioned: Rust (immutability by default syntax), F# (immutability encouragement), Swift (copy-on-write for containers), Haskell (pure functional approach), APL (value-only semantics)
Concerns raised: Threading state through program is painful without reference semantics, Reference counting overhead with multithreading (atomic refcounts), Performance cost of copy-on-write vs in-place mutation, Difficult to build custom data structures without reference semantics, Parser ambiguity between function calls and loop bodies
Feature requests: Support concurrent mutable containers, Simplify block syntax (either keywords or parens, not both), Use persistent data structures instead of copy-on-write
Competitors
Other products that read as similar to this one : 280 launches clear the similarity bar, closest 8 shown.
Attention rank: #45 of 281 (itself plus its competitors, highest first, normalized so YC and Product Hunt are compared fairly).
Launched 85 days after the earliest competitor.
- AttaLambda: a language where types and data are made of untyped lambdas · hn · 2026-09-14 · 44 upvotes · similarity 0.51
- Valk · hn · 2026-02-10 · 5 upvotes · similarity 0.50
- Han · hn · 2026-03-14 · 208 upvotes · similarity 0.47
- The Taka Programming Language · hn · 2025-12-03 · 12 upvotes · similarity 0.47
- I wrote a technical history book on Lisp · hn · 2026-02-17 · 252 upvotes · similarity 0.46
- Mach · hn · 2026-06-08 · 32 upvotes · similarity 0.46
- Genotype: language that compiles to idiomatic TS, Rust and Python · hn · 2026-09-08 · 9 upvotes · similarity 0.46
- Topaz · hn · 2026-06-18 · 5 upvotes · similarity 0.46
The niche, labels, vibe code rating and competitor comparison on this page are analysis by Nicheloom. If you use them, please credit nicheloom.com. How you may use our data.