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

There are different ways in which a programming language isn't right for someone.

For example, it can be like beef liver. It's not that I don't eat it because of a commitment to vegetarianism. I'm not a vegetarian and I'll gladly eat rare cow on a bun. It's not that I don't believe beef liver is nutritious. I just find eating beef liver an inherently unpleasant experience. It's how I feel whenever I try to use Python [even though it is quite likely more popular than beef liver].

There are also languages which aren't right for me because they don't really fit with what I want to do. Swift for example is only available on the OSX platform and I don't own a Mac.

Neither of those apply to Common Lisp. The reason Common Lisp isn't really for me is that there are simply less painful alternatives for the sorts of things I want to do. And one of the ways in which those alternatives are less painful is because of their communities.

It's not that language communities shouldn't be opinionated. I listened to DHH talk about Rails in the early days on an older Hansel Minutes podcast. The object is "person" and the table is "people". If that offends someone, then Rails might not be for that person.

But the Rails community gets to the point quickly. It lays out the facts and moves forward. Within that community it is not considered acceptable to say, "read this book and these five papers and drop a few thousand on commercial software, and then we might consider you worthy."

They tend not to tolerate that. But from the heritage of usenet.comp.lang.lisp that's still considered by some a perfectly entertaining way to treat novice questions in the Common Lisp community. Answering easy questions is dull and being snarky is an outlet for creativity in comparison.

In the end, my hypothesis is that programming languages live and die the same way as natural languages, either the community onboards new speakers and the language lives or it doesn't and the language dies [take this as a Kuhn paradigm if you prefer a reference point in science]. C remains vibrant as the language of Unix and its descendants. JavaScript thrives as the language of the web. Pascal and Algol and Simula are less than vibrant or thriving because few people are learning the language.

By analogy some members of the Common Lisp community often behave as if it's wrong for babies to babble, that toddlers should learn the alphabet by reading Faulkner, and that only then are they qualified as persons.

Norvig's article is about learning programming, not taking ten years to learn a programming language. Contrary to a portion of our dialog, he's a bit language agnostic.

> Within that community it is not considered acceptable to say, "read this book and these five papers and drop a few thousand on commercial software, and then we might consider you worthy.

You totally distort the Common Lisp community and you post FUD. You attack Charlotte's preferences for no reason. She presented HER preferences. Still you attack the Lisp community as if individual opinions are not allowed and as if she speaks for all.

Chearlotte speaks for herself and I think her recommendations are good.

There are a multitude free and open source implementations. Many were developed before stuff like Rails or Java even existed. Free and Open Source software has been written in Common Lisp from day one.

Clozure CL, mentioned by Charlotte. It is published on the LLGPL.

SBCL, mentioned by Charlotte. SBCL's roots go back to the early 80s as Spice Lisp and then CMU Common Lisp. Public Domain since 30+ years.

And many others. Usually people complain the Common Lisp has too many implementations.

Nobody required somebody to invest $4500 into a Lisp system to start.

It's just that some people in the Lisp community use the commercial tools and think they are great. I'm one of those. LispWorks is probably the best implementation of a dynamic language anywhere.

If people have actual problems with coding, they have multiple forums. I have personally answered 1000 Lisp questions on Stackoverflow.

> analogy some members of the Common Lisp community often behave as if it's wrong for babies to babble

Some non-members of the Common Lisp community seem to whine a bit too much for my taste. What the Common Lisp community (if there is one) does not really like is whiners who fail to contribute.

I'm not attacking the Common Lisp community. If I were, I certainly would not have opened my comments with the idea that the community places a hurdle before itself when marketing the language it loves. And one of the things I love about Lisp is the way in which I share a love for the language with the larger community.[1]

I have nothing against commercial tools. I've spent many thousands of my own dollars on shrinkwrapped bits over the years. That doesn't change the fact that shrinkwrapped bits are continuing to diminish in popularity due to thirty years of Stallmanism running in parallel with nearly thirty years of "greed is good" and even more years of a hacker ethos where spending 80 hours to pirate fifty dollars worth of software is a hobby.

Why care if the Common Lisp community likes me? It don't like most people. It would be foolish to its dislike personally. In fact, why blame them when Hell is other people?

The upshot is that I care enough to say something constructive. I don't wish the Common Lisp community anything but success. I'm not a jaded ex-lover. I hope it meets someone new and that someone turns out to be its soul mate.

[1] Going so far as to coin the term "love song to Lisp": https://hn.algolia.com/?q=love+songs+to+lisp#!/comment/forev...

"[even though it is quite likely more popular than beef liver]."

It's a total digression, but if you don't restrict your population under consideration beyond "all humans", I would guess that's not the case.

Quite a few more people eat cow than program, so even if Python is significantly better liked amongst programmers than liver is amongst cow eaters, there's plenty of room for liver to be "more popular".

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