The Lisp curse

The Lisp curse

https://www.winestockwebdesign.com/Essays/Lisp_Curse.html

The power of Lisp is its own worst enemy.

An interesting essay on the “Lisp curse”, the idea that Lisp’s power can sometimes be a disadvantage for developers. The core idea expressed as a question: how hard is it to add object-oriented features to a language? In the C world it’s happened twice, giving rise to C++ and Objective-C, an no-one would even think about defining their own. In the Lisp world, by contrast, building that style of object-oriented extension is a weekend’s work (assuming we didn’t already have CLOS, which is in many ways superior anyway). The point is that it’s relatively easy to build even complex features as libraries, meaning there’s less reason to standardise, and this leads to a proliferation of mutually incompatible designs that solve 80% of the problem – but all a different 80%. This then makes interoperability difficult.

In fact the essay goes farther, to argue that the sorts of people who write Lisp tend not to be the sorts of people of work well in the political and compromise-driven world of standardisation. I’m not sure how true that is, given the stability of the Common Lisp standard itself since its adoption in 1994, but it’s an interesting reflection on how increased language expressiveness need not automatically be a strength.

(Some of the links in the article are now broken, or point to what looks like an AI link farm.)

Programming algorithms in Lisp

Programming algorithms in Lisp

nil

Vsevolod Domkin. Programming Algorithms in Lisp. Apress. 2021.

This is exactly what it sounds like: an algorithms textbook that uses Lisp as its implementation language. It has the strengths and weaknesses of all such textbooks: it shows programmers, especially new programmers, how to write algorithms that are both correct and efficient, and the places where incorrectness and inefficiency will hide; and in doing this it tempts them to write algorithms that are already implemented in libraries, when they should really seek out and re-use the already-developed and -debugged code.

But of course there are always new algorithms that don’t have an existing library and therefore need to be written from scratch. This book is excellent preparation for that. It would give a new-ish programmer the confidence to tackle a challenging algorithm design and implementation job. It ranges well away from the common algorithms, to cover things like approximation and (especially importantly) parallelism and lock-free data structures, and I can imagine it providing templates that could be used as starting points for a huge range of new algorithms. Just remember not to re-invent the wheel.

Modern Common Lisp with FSet

Modern Common Lisp with FSet

https://fset.common-lisp.dev/Modern-CL/Top_html/index.html

A book-length description of a library, FSet, that provides functional collections for Lisp. By “functional collections” the author means collections – sets, trees, maps, and others – where update always produces a new collection rather than mutating the original collection in place. This is an attractive property for a language, and one that’s hard to do efficiently. As with Purely functional data structures, it provides a change of emphasis that makes for more referentially transparent code.

The book contains a lot of discussion about the library’s rationale and design, which makes it useful as a reference for others designing large libraries (or new languages, which of course in Lisp can mean much the same thing). There’s an equally important discussion about what’s not provided (for example lazy collections) which is really interesting by giving an example of when to stop with a codebase that could otherwise probably grow indefinitely.

Made in America

Edward Stourton (2026)

A view of Donald Trump’s presidency through the lens of American history.

Stourton’s premise arises from surprise: when people frequently describe Trump as an anomaly and a unique threat to democracy, is that actually true? – or were there precedents? He sets out to show that many of Trump’s ideas are deeply embedded in American history, arising repeatedly in similar guises.

Many of the connections have been made before, notably with President Andrew Jackson’s view that politics comes before, and must sometimes supercede, the law. But Stourton has a journalist’s ear for subtle echoes, and surprisingly (to me) includes Franklin Delano Roosevelt in the same sequence of presidents willing to ignore or circumvent the established readings of the law and constitution as he pushed the New Deal forward.

I found strongest arguments to be those about religion. To the question of how religious voters support a clearly irreligious president so fervently, Stourton reaches back almost to the foundation of America, to the early Puritan colony of Massachusetts, where the theme of religious liberty didn’t mean what we might expect today. The Puritans left England to seek liberty for themselves, but once established in their own realm proceeded to reproduce the intolerance they themselves had fled. The later Madisonian view that religion belongs to the private sphere, untouched by and untouching of the state, therefore sits alongside a completely contrary view that the state should have a controlling religious faction and orthodoxy – and the latter view seems to have recently become dominant, much to the surprise of outside observers but perhaps not as historically anomalous as it at first appears.

In the epilogue Stourton returns to the often surprising differences between American and European (and especially British) views. It raises the question: was the post-war consensus on human rights and peaceful co-existence actually sincere, based in an idea of progress? – or was it adopted purely as a response to the shocks of the war? Has it simply taken eighty years for the old power politics to re-emerge, and were we foolish to think it might be otherwise? I hope not.

4/5. Finished Sunday 7 June, 2026.

(Originally published on Goodreads.)

The Secret History

Donna Tartt (1992)

The book that gave rise to the whole genre of “dark academia”, and a well-crafted tale of self-absorbtion within a closed-off community of scholarship. That kind of self-absorbtion is hardly unusual in academia of course (speaking as an academic) – although it seldom leads to murder.

The structure, pacing, and writing are all impeccable, and readily let a reader picture the sleepy New England college campus setting (inspired by Tarte’s alma mater Bennington College). It starts with a retrospective, the narrator reflecting on the murder around which the plot revolves before changing the his first-person linear narrative. The characters are well-drawn if perhaps a little stereotypical: the narrator is a working-class outsider who finds his way to a selective college and the company of a group of far more wealthy and self-contained students, whose entire academic experience is orchestrated by a professor with a deep and charismatic commitment to the relevance of the classics to the modern world. They will end up turning on each other under the pressure of the murders (plural) that they commit: the first in a pursuit of Dionysian ecstasy gone wrong, and the second to cover-up the first.

The book is written to almost obscure the time in which it happens: I wondered for a long time whether it was set in the 1920s, before I eventually decided it was more probably in the 1980s. Perhaps that’s a comment on liberal arts college life, of study set apart from the outside world. Not quite the academia I recognise, but as an act of world-building it’s superb, and as a plot it’s well-observed and well-crafted with plenty of twists and uncertainties.

5/5. Finished Sunday 7 June, 2026.

(Originally published on Goodreads.)