Built a tiny interpreter from scratch in C to understand how they work
Hi HN, I'm the author. I built this project for two simple reasons: I've always used higher-level languages and wanted to finally understand what's happening "under the hood" of an interpreter. I also wanted a real project to force me to "power up" my C skills, especially with manual memory management and reference counting. The result is ToyForth, a minimal interpreter for a Forth-like language, written from scratch in C, stack-based. I focused on making the code clean and understandable. It's broken down into a few simple parts: A parser that turns source text into a list of objects…
Built a tiny interpreter from scratch in C to understand how they work launched on November 12, 2025 with 5 votes, #4,178 of 9,796 launches that month and more than 75% of that year's launches.
What it does
A minimal, clean interpreter in C, built for fun. A perfect starter kit for learning about or building your own language. - renvins/toyforth-interpreter
In the maker’s words, at launch
Hi HN, I'm the author. I built this project for two simple reasons: I've always used higher-level languages and wanted to finally understand what's happening "under the hood" of an interpreter. I also wanted a real project to force me to "power up" my C skills, especially with manual memory management and reference…
Does a similar job
all alternatives →- IBI built a minimal Forth-like stack interpreter library in C2025 · ▲47
This weekend I created stacklib.h - a single-header library that brings Forth-style stack operations to C. It implements a basic interpreter with: - Stack operations (push/pop/dup/swap/over/drop) - Arithmetic (+, -, *, /) - Output (., emit, cr) - Stack inspection (.s, depth) Example usage: Stack s; stack_init(&s); dict_init(); exec(&s, "10 20 + ."); // Prints "30" exec(&s, "1 2 3 4 .s"); // Shows stack contents The library is self-contained, requires no dependencies, and handles basic error checking. It was inspired by wanting to understand…
- GIGoing into freshman year, figured I should build an interpreter2023 · ▲138
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
PlanckForth – Bootstrapping an interpreter from handwritten 1kb binary2021 · github.com · ▲132Bootstrapping a Forth interpreter from hand-written tiny ELF binary. Just for fun. - GitHub - nineties/planckforth: Bootstrapping a Forth interpreter from hand-written tiny ELF binary. Just for fun.
I wrote a minimal memory allocator in CNov 2025 · github.com · ▲137A fun toy memory allocator (not thread safe, that's a future TODO). I also wanted to explain how I approached it, so I also wrote a tutorial blog post (~20 minute read) covering the code which you can find the link to in the README.
- IWI wrote a technical history book on LispFeb 2026 · berksoft.ca · ▲252
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…
My C compiler compiled itself2024 · github.com · ▲275One of the most challenging projects of my life :)
More dev tools this month
the category →

open-source IDE for thoughtful software design. Contribute to devdotfast/whiteboard development by creating an account on GitHub.
Dev tools · 28d ago · github.com

Contribute to reladraw/reladraw development by creating an account on GitHub.
Dev tools · 26d ago · github.com
OpenBot▲362Grok Bot alternative: free, local, open-source, multiplayer
Dev tools · 23d ago · openbot.run
Talanoa▲346Hi HN, I’m a fullstack developer, and honestly, I’ve lost count of how many side projects I’ve worked on over the years. But one idea kept coming back to me: a different kind of email client. It first came to me in 2014: “What if we could handle emails more like conversations?” Every year, I’d revisit this concept in my “Build Notes.” Ten years later, no one had built exactly what I had in mind — so I finally decided to do it myself. That’s how Talanoa was born. I wanted something focused on people, not timelines. I was tired of marking messages as unread just to remember to reply later, or…
Dev tools · 21d ago · talanoa.email
CoreSpeed▲332One MCP for everything your agents need: apps, memory, tools
Dev tools · 28d ago · corespeed.io
Source: Show HN post ↗ · launch text quoted in part
Launched alongside, November 2025
the whole month →
Guideflow▲1,338Create interactive product demos and step-by-step guides in seconds with Guideflow, the leading AI-powered demo automation tool.
AI · Nov 2025 · guideflow.com

Hardware and software projects by Ali Roberts
Life & fun · Nov 2025 · bitsnpieces.dev
Welltory▲1,028Measure your wellness. Use data to feel great every day.
Work · Nov 2025 · welltory.com

TrustMRR▲833LLM Gateway is a b2b artificial intelligence based in United States, founded in 2025. $259,539/month in verified Stripe revenue. $78,764 MRR. Ahrefs Domain Rating 52/100. growing 55% month-over-month. Track LLM Gateway's verified metrics on TrustMRR.
Growth · Nov 2025 · trustmrr.com
Boing▲782Life & fun · Nov 2025 · boing.greg.technology