topic: programming languages
Everything I’ve written on the subject, from the beginning of this version of the site.
-
2020
-
Sep
-
05
-
Data Constructors, Part 1: Understanding by Implementing —JOURNAL
Understanding an idea from Standard ML-like languages by implementing it in (boring) TypeScript.
-
-
-
Oct
-
13
-
Data Constructors, Part 2: Better TypeScript —JOURNAL
A deep dive on more idiomatic TypeScript implementations of ML-style data constructors.
-
-
24
-
Writing Robust TypeScript Libraries—JOURNAL
A subtler art than it might at first appear, if you intend to support JS or even loose mode TS.
-
-
-
-
2021
-
Jan
-
22
-
Using Classes for Functional Programming—JOURNAL
We tend to think classes are inherently for object-oriented programming, but they are much more flexible than that in JavaScript and TypeScript (and other languages too).
-
-
-
Mar
-
21
-
Progressive Disclosure of Complexity and Typed FP Languages—JOURNAL
Or, one part of why to some extent Elm, and to a significant degree PureScript Halogen, can be quite difficult for users to get their heads around at first.
-
-
-
Nov
-
18
-
Reading “A Functional Programming Language with Versions”—LIBRARY
The first academic research I’m aware of which actually takes Semantic Versioning seriously!
-
-
-
-
2022
-
Jul
-
08
-
A Pleasing Symmetry in Rust—JOURNAL
Appreciating how Rust
enum
variants are mirrors of its kinds ofstruct
s.
-
-
21
-
Some Thoughts on Zig—JOURNAL
A positive framing (of one part at least!) from someone who is distinctly not here for what the language is selling.
-
-
-
-
2023
-
Jul
-
11
-
Je ne sais quoi—JOURNAL
Programming languages, cameras, computers, and other technologies—and feel.
-
-
-
Sep
-
24
-
Brain Rewiring in Progress—JOURNAL
Learning Racket is making my head hurt in the best way.
-
-
-
Nov
-
06
-
Seven Languages in Seven Weeks—LIBRARY
A now-classic read for software developers. How did it age?
-
-
-
Dec
-
07
-
The Wizardry Frontier—JOURNAL
Against the idea that accessibility and reliability (or other such dichotomies) must remain at odds in programming languages.
-
-
16
-
Why Not Type-Based Overloading in Rust?—JOURNAL
Too much spooky action at a distance.
-
-
-
-
2024
-
Jan
-
09
-
LambdaConf 2024—Two Talks!—ELSEWHERE
One technical deep dive on versioning, one philosophical exploration of our limits as software engineers.
-
-
-
Mar
-
11
-
Async Rust Complexity—JOURNAL
One reason things “feel hard” in this part of the ecosystem.
-
-
12
-
You Have to Type It Out—JOURNAL
A note on how learning works (in my experience, anyway).
-
-
-
That’s it for this topic… but there are many, many more!