nowfound

Life & fun · May 4, 2020

I wrote a VM and Compiler for a small language in Go

My implementation of Thorsten Bell's book (Writing an Interpreter in Go) - actuallyachraf/monkey-giggle

I wrote a VM and Compiler for a small language in Go launched on May 4, 2020 with 37 votes, #942 of 4,813 launches that month and more than 90% of that year's launches. The site was still online in September 2026, 6 years on.

Visit github.com ↗Alternativestop 20% of May 2020

In plain words

This is a virtual machine and compiler implementation for a small programming language, written in Go. It's designed for developers and programming enthusiasts interested in language implementation and compiler design. The project demonstrates core concepts of how VMs execute code and how compilers translate source code into machine-executable form, making it suitable for educational purposes or as a foundation for language experimentation.

written from the facts on this page · September 2026

Does a similar job

all alternatives →
  • TinyGo – LLVM-based Go compiler for microcontrollers2018 · github.com · ▲177

    Go compiler for small places. Microcontrollers, WebAssembly (WASM/WASI), and command-line tools. Based on LLVM. - tinygo-org/tinygo

  • A small virtual machine written in C2014 · github.com · ▲212

    "interesting" VM in C. Let's see how this goes. Contribute to tekknolagi/carp development by creating an account on GitHub.

  • A compiler and VM for a simple language, in 150 lines of code2022 · gist.github.com · ▲200

    A complete compiler for a simple language (in less than 150 LoC) - 00_readme.md

  • I made a Clojure-like language in Go, boots in 7msMay 2026 · github.com · ▲292

    Let-go is a Clojure-like language (~90% compatible with JVM Clojure) written in pure Go. It ships as a ~10MB static binary and cold boots in ~7ms - that's about 50x faster than JVM and 3x faster than Babashka. It has decent throughput on algorithmic workloads - within ballpark of the GraalVM-backed sci. I started this project in 2021 as an elaborate practical joke: I wanted to have an excuse for writing Clojure while pretending to write Go. Jokes aside, it turned out to be pretty decent: it feels like real Clojure, it has an nREPL server (supported in Calva, CIDER, etc.), it's easily…

  • I wrote a BASIC interpreter in Go2018 · github.com · ▲144

    A BASIC interpreter written in golang. Contribute to skx/gobasic development by creating an account on GitHub.

  • Wrote a tiny WebAssembly (wat2wasm) compiler in Go2022 · github.com · ▲75

    As a personal project I wrote a really tiny Wat 2 Wasm compiler in Go. Mainly for demonstrative and educational purposes. It was tough: I didn't know anything about WebAssembly internals and I'm a newbie with Go... so I tried to document it as much as I could for anyone that would like to approach the quest in the future! It misses a lot of features (that will be gradually implemented). Any feedback is welcomed!! Demo: https://luna-demo.vercel.app

More life & fun this month

the category →

Source: Show HN post ↗

Launched alongside, May 2020

the whole month →
  • Blush▲1,462

    Illustrations for everyone

    Dev tools · 2020 · blush.design

  • Animation of the SHA-256 hash function in your terminal. - in3rsha/sha256-animation

    Dev tools · 2020 · github.com

  • This Word Does Not Exist uses an artificial intelligence model named GPT-2 to invent new English words.

    AI · 2020 · thisworddoesnotexist.com

  • P3

    Life & fun · 2020 · leeoniya.github.io

  • Untools▲783

    Hand-picked tools for better thinking

    Work · 2020 · untools.co

  • Improve your website copy based on data from your audience

    Growth · 2020 · wynter.com