Building a Runtime with QuickJS
Building a tiny JavaScript runtime on top of QuickJS with timers, file I/O, and an event loop.
Building a tiny JavaScript runtime on top of QuickJS with timers, file I/O, and an event loop.
I built a tiny shell in C to learn what fork, execvp, and dup2 are doing under the hood.
Building a fair, cancelable semaphore in Go and the subtle concurrency issues involved.
A bytecode compiler and VM for a Forth-like language.
Sliding around a cave and hitting opcodes.
Rewriting a word counting program five times until it's 494x faster.
Increasing performance by reducing thread scheduling overhead and lock contention.
A very fast du -sh clone for macOS.
FUSE filesystem where file operations are handled by an LLM.
Writing a game solver for Queuedle.
A daily word-sliding puzzle game inspired by Wordle and Scrabble.
Brief introduction to chess bitboards and move generation with animations.
Building a package manager with a fast install step.
Chess, card games, and Lua.
Extending my Lisp compiler and adding a fast virtual machine.
Visualizations and techniques for different maze generation algorithms.
Using ptrace to intercept and modify a process's getrandom syscall.
Exploring patterns and systems for creating realtime browser games.
Smaller programs that do less work.
Transpiling Lisp to JavaScript using Rust.