dcreager.net

This is the online space of Douglas Creager. Welcome!

About me
What I’m doing now

Delicious content

Chronological blog-like posts
Evergreen notes
Links and quotations
Reading log
Recipes
Conference talks
Academic publications

Latest updates

2025-07-18 [Reading log] “Polymorphic functions with set-theoretic types” parts 1 and 2
2025-06-21 [Link] Arcade1Up Raspberry Pi mod
2025-06-11 [Reading log] “Programming with Union, Intersection, and Negation Types”
2025-06-02 [Link] Hotspot performance profile viewer
2025-05-01 “Imperative” property testing and the `arbtest` crate
2025-04-10 Viewing man pages using neovim
2025-02-03 [Link] Piccolo: A stackless Lua interpreter in Rust
2025-01-22 Generating HTML from Go
2025-01-13 [Link] Paul Downen's linear logic lecture
2025-01-10 “Full” screen within a window in Firefox

Greatest hits

A better varint
A map of the tree-sitter ecosystem
Clean git histories and code review workflows
Getting started with tree-sitter
Git commits and code review (revisited)
Reflections on the final Strange Loop
Rust error handling patterns
Shared library versions
Transcript of Wirth's “Closing word at Zürich Colloquium”
Using a Sony RX100 Mk IV as a webcam on Linux

Disclaimer

All of the opinions expressed on this site are my own, and not those of my employer.