We Should Be Able to Change Our Languages
Programming languages are treated as fixed, sacred artifacts, but Jimmy Miller argues we should customize them. He points out that LLMs now make it easier to understand complex code, and AI-written code benefits from macros that enforce consistency. To demonstrate, he resurrected SweetJs as Sweetener for TypeScript, showing custom operators, algebraic datatypes, and control flow in TSX. He contends that macros encode larger patterns and help tame codebases, yet macros alone are not enough—we need more flexible languages.
Macros encourage people who are not good at language design to do something equivalent to language design, using tools that don't help, and with effects that are too powerful.