Every few years someone declares Lisp dead, and every few years the obituary is filed alongside the previous one. The pattern is old enough now to be its own genre1.

A similar story plays out with Smalltalk. The language slid out of the mainstream after Sun's licensing fees made commercial use awkward in the early 90s2, and yet every modern object system carries its fingerprints: live image-based development, the model-view- controller pattern3, the very notion of "sending messages" to objects.

Forth's story is stranger. It's still inside enough firmware that you have probably executed Forth bytecode today without knowing it — the Open Firmware standard adopted by Apple, Sun, and IBM4 runs on a stack VM derived directly from Charles Moore's 1970s work.

The lesson isn't that these languages were ahead of their time, or that the mainstream is wrong, or that you should rewrite your CRUD app in any of them. It's that paradigms move at one timescale and the code that depends on them moves at another, and the "dead" languages often end up doing more lifting per surviving line than the trendy ones.


1

Graham, P. (2003). "Beating the Averages." Reprinted in Hackers & Painters, O'Reilly, 2004. Graham frames the recurring Lisp-is-dead claim as a feature of the language's culture rather than its technical position.

2

Goldberg, A. (1994). "The Story of Smalltalk." HOPL II. Goldberg's first-hand account of the language's commercial trajectory at ParcPlace and IBM.

3

Reenskaug, T. (1979). "Models - Views - Controllers." Internal Xerox PARC memo. The original MVC formulation, written while Reenskaug was visiting the Learning Research Group; the pattern was shipped first in Smalltalk-80.

4

IEEE Std 1275-1994. "Standard for Boot (Initialization Configuration) Firmware: Core Requirements and Practices." Used by Sun's SPARC machines, Apple's Open Firmware (1994 – 2006), and IBM's RS/6000 line.