Hacker News new | past | comments | ask | show | jobs | submit login

First of all, the Blub paradox is wrong. It assumes that languages can be ranked on a one-dimensional axis labeled "power". That assumption is wrong.

To see why it's wrong, think about Lisp and Haskell. Users of both languages are sure that they're at the top of the power curve, they're sure that they're looking down when they look at the other language, and they're sure why they're looking down. "How can you get anything done in [Haskell|Lisp]? It doesn't even have [macros|a decent type system]!" But if both are sure they're looking down, then languages can't be well-ordered by "power".

Next, that syntax. I suspect that that kind of syntax "clicks" with some people, and not with others. (Almost everyone could learn it, but that's not the same thing.) And I think you're right that "the masses" - the vast majority of people - are people to whom it doesn't "click". This may be the real flaw of Lisp (and Haskell) - the syntax is just wrong for the large majority of programmers.

Note well: This is my pet theory. I have no data. All predictions guaranteed wrong or your money back.




I'm not sure there are many people who know both a Lisp and Haskell and still insist on even comparing them. The conclusion I see most often, when someone tries, is basically that "whatever, both are still centuries ahead of Java".

With a decent macro system you can implement a type-checker (CL, Clojure and Racket do), as sophisticated as you want. But you can also write a type-level interpreter (of Lisp, if you want) which would evaluate programs during compilation (I can't find the post anymore, someone was describing their job interview gone... weird...). The difference between the two, more than with other such comparisons, comes down to aesthetics and cultures.

IOW, you can't infer the lack of ordering based on two items having an ex aequo position.



IMO the problem with Haskell isn't syntax, it's jargon. Not only is the jargon dense, heady, and ubiquitous, but (in my limited understanding) it also doesn't necessarily correspond cleanly to math concepts of the same name.

I guess you could say that jargon is just another form of syntax.


Well, I thought about saying that with Haskell, it was semantics at least as much as syntax. By that, I meant what you meant, but I also meant more: I wonder if functional programming itself is a poor match to the way that most programmers think, and not just because they are untrained on FP.

But I didn't say that, because I thought it was a bit of a digression to my point, which was already a digression on phkahler's point, and the digressing has to end somewhere...


It's all good. I've rather enjoyed reading the responses. IMHO this type of thing is what really makes languages appealing or not too different people.




Consider applying for YC's W25 batch! Applications are open till Nov 12.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: