The Limits of Lisp Extensibility: A Critique of "100% Lisp" Claims
By
todsacerdoti
Crackles when you bite it. Shows the baker did the work.
Summary
The article critiques the common argument that Lisp-based editors like Emacs offer perfect extensibility because they're written in Lisp. It argues that while Lisp provides good extensibility, it's not unlimited - developers are still constrained by coding conventions, existing code, and the fact that not everything can be extended without breaking functionality. The author provides a concrete example from Org-mode where overriding a function (org-export-get-reference) doesn't work because Org-mode sometimes bypasses it by calling org-html--reference directly.
Key quotes
· 4 pulledCompared to extending via workarounds, extending in 'pure Lisp' can be both easier and harder, as we are still bounded by coding conventions and existing code, and one cannot possibly extend everything without breaking some of them.
It's not wrong, but I think it does overlook a few things.
Oh no! It turns out that, sometimes Org-mode directly calls org-html--reference, bypassing our override.
one of the most common arguments seems to be: 'it's written in This Lisp and also scriptable in This Lisp, and that gives it great extensibility.'
You might also wanna read
Kefir C compiler development moves to private mode indefinitely
The developer of the Kefir C compiler announces the cessation of public development, transitioning the project to private mode indefinitely.
Why Average LLM Use Is Likely Destroying Value in Software Development
The author argues that, contrary to prevailing hype, the average use of Large Language Models (LLMs) is likely destroying value rather than
How AI Accelerated Prototyping: From Idea to Tangible in Record Time
The author reflects on how AI has transformed their prototyping workflow. Previously, the biggest bottleneck was the time needed to scaffold
GitLab 19.0 launches with Secrets Manager, agentic workflows, and self-hosted AI models
GitLab 19.0 has been released, positioning itself as an intelligent orchestration platform for DevSecOps. The release includes expanded secr
bit.ly·1d agoCentralizing Error Handling in Rust with Custom AppError Enums
This article discusses the importance of centralizing error handling in Rust applications using a custom AppError enum combined with map_err
Zig Devlog: Build System Rework Separates Maker and Configurer Processes
This devlog entry from the Zig programming language project announces a major rework of the build system, separating the maker process from
