Language Grubbing — cover art: a small storybook hedgehog forager in a tweed cap and small leather satchel rummages through a thicket of fallen leaves and mossy roots at dusk, lit by a tiny brass lantern, pulling out a leather-bound book from the leaf-litter while half-a-dozen other small leather-bound volumes (in different cover-colours) are already piled at its feet. 🤓

2005 · Drunken Blog Rants · Survey

“If Java code bases grow superlinearly with the functionality, and Perl/Python/Ruby grow roughly linearly, then Lisp grows sublinearly.”
— From Language Grubbing, February 2005
Read the essay

© 2005 Steve Yegge. Originally published at Drunken Blog Rants.

Author’s note

Really not worth it unless you are a languages historian. This is just my own survey of the available languages at the time. Tour de Babel has some overlap with this and is better all around.

AI Notes

After a year of off-hours "grubbing" through about twenty languages, Steve opens with the meta-lessons rather than a ranking: languages form religions because they're hard to master and mould their users' thinking; new ones appear constantly because mini-languages emerge faster than old languages can adapt; marketing beats merit, and a language only has to be perceived as easy to learn. Then the capsule tour. C is timeless. C++ gets its grievance saved for later. Java is the cautionary case — the only language whose code base grows superlinearly with the feature set, which is what's driving the Java world toward refactoring-tool automation. Perl fades from memory faster than any language he's used. Python is surprisingly expressive; Ruby is the daily driver. Smalltalk waited patiently and Java stole its day. Common Lisp is goliath-ugly but goliath-capable; Scheme is small and beautiful and not turn-key; ML is fast under the strict type system; Haskell still looks years from production.

It's a compact index of Steve's mid-2000s language thinking — most of his later language posts trace back to one of these capsules. The closing line: languages DO matter.

Related listings

  • 2005

    Choosing Languages

    Same arc — the prescriptive companion. Grubbing is the descriptive survey; Choosing Languages is the decision framework Steve built on top of it.

  • 2004

    Tour de Babel

    Same shape, one year apart. Tour de Babel is the longer marquee survey of the corpus; Grubbing is the shorter, more personal stocktaking that pairs with it.

  • 2005

    Is Weak Typing Strong Enough?

    Same year — the depth piece for the type-system thread that runs through every language note in Grubbing. Where Grubbing comments in passing on each language's typing story, Weak Typing argues the position at length.