Hacker News new | ask | show | jobs
by zephen 18 days ago
> compared to languages which demand much more effort to get anything substantial done.

It is not clear at all to me that other languages "demand much more effort" for the same end result.

It is clear that many non-lisp programmers value syntax, and many lisp programmers don't. Even many people who programmed enough lisp to have their minds blown and expanded still prefer not to program in lisp. I'm still awaiting psychological studies on this, but the rift is so large, I think there may be some significantly different brain processing going on between the two groups.

To your point, yes, it is also clear that, to the extent that lisp can match the productivity of other languages, whether it exceeds them or not, one of the tools that is needed to achieve this productivity boost in lisp is heavy usage of homoiconicity, and this results in every serious lisp program being a collection of DSLs, each of which is only understood by one person or very few people.

2 comments

> Even many people who programmed enough lisp to have their minds blown and expanded still prefer not to program in lisp.

I can guarantee you that most of these simply didn't go far enough; they had their "minds blown" with too little. They latched onto a highlight or two, found a way of sort doing that in C++ or Javascript and moved on.

There are people who have had their "minds blown" by time/mass dilation of special relativity, or phenomena in quantum physics, who don't actually know anything about physics; they couldn't work out how far a canon ball will land fired at a 45 degree angle with a certain velocity, though they can crack jokes about Schrödinger's cat.

For those of us sticking with the Lisp program, in one way or another, it was more of a sequence of small revelations in a progression of topics. Oh, that's a good way of representing that; that is pretty nicely thought out; that fits well with that; they had that how many decades ago? Sheesh; ...

Then once you start grappling with the Lisp issues, and kick the rock farther down the road, even in some small way, you are invested.

> I can guarantee you that most of these simply didn't go far enough;

And I can guarantee that I knew, when I wrote my comment, that I was summoning this very "No true Scotsman" argument.

> they couldn't work out how far a canon ball will land fired at a 45 degree angle with a certain velocity, though they can crack jokes about Schrödinger's cat.

It always superciliously starts with how true lisp people are the most brilliant ever.

> Then once you start grappling with the Lisp issues, and kick the rock farther down the road, even in some small way, you are invested.

And is eventually undermined by an admission of cognitive inflexibility, although not usually so quickly or in the same comment. Good job!

Ha! For a second it looked like there was a debate here.
What's the point? There's nobody here but you and me.
That's right, you're all alone in this private chat room.
Attention is a valuable commodity. I guess I owe you. Here, have an upvote.
> Even many people who programmed enough lisp to have their minds blown and expanded still prefer not to program in lisp

For me, the answer to this is economics. Even if you love lisp, there are way more companies hiring for stacks that don’t include lisp

If you then optimize for employability, which I assume most developers do (not all, but a large percentage), you might end up with not that many people practicing lisp regularly

> For me, the answer to this is economics. Even if you love lisp, there are way more companies hiring for stacks that don’t include lisp

Certainly. But why would that be? It couldn't possibly be that the programmers already there built a system using the tools of their choice, and that system is now running well and deemed maintainable enough they require additional developers for the same language, could it?

Sometimes, of course, companies change their implementation language. The most famous cases I know of this are Viaweb and reddit, where the companies moved away from lisp. The company's main motive in this, of course, is making money. If they have a good product that is deemed maintainable, why would they piss off the original team, who probably chose the language, by switching languages?

Many programmers have worked in lisp. Studies have shown that programmers routinely learn new languages and somewhat forget old ones; older programmers are typically only currently proficient in as many languages as younger ones.

A company with a successful product is going to attempt to leverage that success. Whether leveraging it looks like incrementally improving it, or like treating it as a prototype and throw it out, will typically be a long conversation between developers and management. Typically incremental improvements are greatly preferred; it is only when all stakeholders become convinced that a fresh start is required that massive changes like implementation language will take place.

The calculus, of course is changing with LLMs. See, for example, the recent migration of bun away from zig. That rewrite was spearheaded by a massively effective lone developer, the exact persona that is claimed to always prefer lisp. Sadly, he chose rust.