Marijn Haverbeke

Programmer, tech writer
email, twitter, github, pubkey

Software

gitweb
Git repositories on this server

Common Lisp

Postmodern
A PostgreSQL programming interface
CL-JavaScript
A JavaScript → Common Lisp compiler
PCall
A parallelisation library
CL-TK
Tcl/Tk bridge
ST-JSON
JSON encoding and decoding
parse-js
A JavaScript parser
Hob
A toy programming language under development.

JavaScript

CodeMirror
In-browser code editing made pleasant
Mold
Client-side HTML templating
Bouncing Beholder
My winning JS1K contest entry.

Scheme

Unlikely Scheme
A simple Scheme interpreter (not maintained)
Dunwich
A text adventure game

Relics

OpenJigsaw
A small puzzle game
Blob Shepherd
Simple dexterity game
Zombies
Another game, one of my first programming endeavours

Writings

JavaScript

Eloquent JavaScript
A modern introduction to programming
The writing of an in-browser code editor (and the sequel)
A brutal odyssey to the dark side of the DOM tree
Continuation-passing style
CPS as applied to JavaScript

Rust

The Rust tutorial
The first readable description of the language

Miscellaneous

A Gentle Introduction to Machine Fundamentals
Machine instructions and turtle graphics
Concurrency
Concurrency and Common Lisp
Internet-based social contacts
My sociology thesis
Giving caches a chance
A piece on HTTP caching