Live data from Hacker News

The Lisp Curse (2017)

winestockwebdesign.com

41–50 of 93 posts

Re: The Lisp Curse (2017)

#41

I would argue that rather than some curse of expressiveness, the lackluster showing from the community in recent years has been the results of a premature standards process. Common Lisp hasn't changed since before I was born, and while to some people that denotes stability, it also leaves new features to be done in the manner the author describes, as 80% projects by lone hackers. The language is more than capable of…

I'm curious; what is Clojure missing a Lisp?

https://news.ycombinator.com/item?id=30802479 touched on it, though I would add that the immutability is a stark departure from previous Lisps. I still think of it as a Lisp, but on an island, similar to Scheme though even more different from mainline Lisp.

Re: The Lisp Curse (2017)

#42

> Making Scheme object-oriented is a sophomore homework assignment. On the other hand, adding object orientation to C requires the programming chops of Bjarne Stroustrup. C++ added a ton of additional stuff to C. The original Objective-C is a much simpler approach on adding object orientation to C and at its core it'd all be about finding expressions like [foo bar:baz boo:hoo] and replacing them with something like o…

Yeah, I agree. If you're willing to use a garbage collection library [0], you can even have a pleasant syntax for ObjectiveC style OOP in C:

    var result = call(foo, "bar: %s boo: %f", baz, hoo);
The garbage collector will pick up the stray memory and release other resources (files) as needed, and all the standard compilers will check the varargs format string for you.

Dynamic typing, arbitrary messages, and no memory leaks. Just like Lisp. It's not perfect (string message could have typos, and might use %p for objects), but it's not too bad.

[0] https://en.wikipedia.org/wiki/Boehm_garbage_collector

Re: The Lisp Curse (2017)

#43
post #12
post #7

If Lisp is do efficient for development, why are there essentially no commercial products that use it?

> If Lisp is do efficient for development, why are there essentially no commercial products that use it? Same reason most of us use QWERTY keyboards instead of one the many better layouts available. After a long enough time as the dominant tool, things get locked in regardless of whether or not they're the best tool for the job. C-Style languages gained dominance early on and became the defacto standard.

> Same reason most of us use QWERTY keyboards instead of one the many better layouts available.

Many people here are coders, not writers, and the layout for generating human language is irrelevant. With QMK firmware tap-hold, and one finger each hand chording, one opens up a quadratic expansion of expressibility, all near home row. Now one can automate all frequent actions (VSCode commands, application launches, windowing scripts) as paired keystrokes.

Keyboard layouts should be the poster child for "Don't get sucked into taking the problem statement as given, THAT's usually what needs questioning."

Re: The Lisp Curse (2017)

#44
post #13

Earlier quoted context omitted.

The answer is always that popularity doesn't correlate with merit.

> The answer is always that popularity doesn't correlate with merit. Exactly. If we used popularity and usage rates as the measure of merit, we'd have to conclude that the highest quality restaurant in the world is MacDonald's.

> the highest quality restaurant in the world is MacDonald's.

Isn't it so? The meal is enough healthy (for hard-workers only, not for calories-gathers), calorage as I have mentioned is excellent, waiting is minimum, non-meal payings (keeping the restaurant attractive) are the lowest possible, the most important thing is that in poor countries (my is in the bottom of bigmac index) the prices are lower than anything else available in big cities.

Re: The Lisp Curse (2017)

#45
post #6

OP posted despite the opening paragraph! > Update on October 6, 2017. N.B.: Please stop submitting this to Hacker News! Look at the Hacker News search results for this essay. Check out the note for the first entry: Come on, everyone! Let's beat the dead horse one more time! Past discussions https://hn.algolia.com/?query=The%20Lisp%20Curse&type=story&...

shrug. The way things work is people upvote things because they find them interesting. If enough people hadn't upvoted it, it would never have showed up on the front page, and most people probably wouldn't have seen it. Anyway, I'm not sure why they care that it gets resubmitted..

Re: The Lisp Curse (2017)

#46
post #26

Earlier quoted context omitted.

>Clojure is a dialect of Lisp, and shares with Lisp the code-as-data philosophy and a powerful macro system. [0] Neither the Clojure page, nor its users seem to agree with you. [0] https://clojure.org/

I think the typical argument goes something along the lines of, "it uses []{} and doesn't make cons the default data structure, abandoning some simplicity-of-language."

Aren't the brackets/braces just sugar?

Re: The Lisp Curse (2017)

#47
post #6

OP posted despite the opening paragraph! > Update on October 6, 2017. N.B.: Please stop submitting this to Hacker News! Look at the Hacker News search results for this essay. Check out the note for the first entry: Come on, everyone! Let's beat the dead horse one more time! Past discussions https://hn.algolia.com/?query=The%20Lisp%20Curse&type=story&...

Dunno, I've been on HN since 2007 and this is the first time I've seen this story.

Re: The Lisp Curse (2017)

#49
post #6

OP posted despite the opening paragraph! > Update on October 6, 2017. N.B.: Please stop submitting this to Hacker News! Look at the Hacker News search results for this essay. Check out the note for the first entry: Come on, everyone! Let's beat the dead horse one more time! Past discussions https://hn.algolia.com/?query=The%20Lisp%20Curse&type=story&...

AFAIK it is common to repost a story here if there has been enough time since the last post since there can be new voices, opinions, etc since the last time it was posted. Dang sometimes posts a comment with links to previous discussions too. Perhaps the author is confusing the norms with Reddit where in many subreddits reposts are often frowned upon.

So long as the year is clearly stated, I do think reposts are a bad idea on HN.

There have been plenty of old articles that I've seen for the first time in a repost.

Re: The Lisp Curse (2017)

#50
post #7

If Lisp is do efficient for development, why are there essentially no commercial products that use it?

The usual answer here, as several of my sibling comments have pointed out, is that popularity and quality are not necessarily correlated. Since this has already been discussed, I won't delve further.

Another answer that hasn't been discussed much is that... maybe it isn't better for development. The article discusses one way in which this could be true: that technical superiority essentially leads to a hopeless community fragmentation that more or less forces it to be inferior in terms of community effects (which are, presumably, more important for commercial development rather than individual development).

A different facet, though, is that I believe the better language isn't the one that gives you more powerful tools to write correct code, but the one that keeps you from writing incorrect code (while still letting you write correct code). A salient example here is goto. Most modern languages don't have the goto keyword anymore, but they instead retain things like break, continue, and early routine... all of which are restricted forms of goto. By using only these restricted forms instead of the general form, it is much easier to immediately see what the code is doing (and presumably quicker to understand why), even though it may strictly be less powerful.

Post reply on HN