Lisp: a cult I almost joined (2005)
fluff.info
fluff.info
See, his arguments about Lisp community being a cult stand. Yours are purely emotional.
Now we could agree that there is a very good reason to be cultic about Lisp -- it is the best thing since the sliced bread etc. etc. and people should just use it -- but that's another matter.
In a way, he pre-empted your reaction with ``If such jokes reliably meet with stifling social disapproval, it's a cult.'' ;-)
But the thing is.. the very same thing could be said of most other language enthusiasts.
Look at all the endless hype from Python and Ruby fans (especially when they compare their favorite language to Perl).
Or look at some OCaml or Haskell fanboys and their attitude that static typing is The True Way and only ignorant savages would prefer a dynamically typed language.
And this doesn't even touch on the vi vs Emacs holy wars.
There's plenty of fanboyishness, exclusivity, and and chastisement of outsiders in many computer fields. And I dare say it's not really limited to computers either. I'm not sure if "cultish" is really the most appropriate term, but I feel no offense at it.
The whole discussion reminds me of these images:
http://www.deimeke.net/dirk/blog/uploads/G7WyP.gif
http://www.rubyinside.com/holiday-fun-how-programming-langua...
they don't let anything new in their language.
Common Lisp is a standard, changing it requires tremendous resources, and provide little actual value, if you have some language extension you want added to the language, put it in a library, it will be much cheaper and much more useful that way.
they stick to s-expressions like they are the holy grail. We stick to s-expressions because they provide tremendous value. They are just more useful than traditional syntax.
they stick to the funny function names as if they were given by god. Common lisp has over a thousand symbols, and only a handful of them i would consider funny, and you are complaining about them? And you accuse us of nitpicking?
The rest of your rant is more of the same bullshit. How can you say you like lisp, and then continue to talk uninformed ignorant bullshit?
I beg you to differ. The original, McCarthy Lisp was a succinct, powerful, flexible, dynamic language based on a small set of axioms.
Through times, a lot has been thrown out for sake of performance (which was understood to require compilation). Um, well, in case of Lisp, it means a lot of cruft has been added (some say, bolted onto) -- the simplicity etc.etc. was lost. Those days functions aren't even lists anymore, and scoping is lexical!
With a few notable exceptions. Which are either hold-outs, or back-to-the-roots/back-to-what-worked-better efforts.
Arc is closer to the original Lisp. Also, is more pleasing to use. Not a coincidence.
p.s. Arc is more pleasing to use to you, I would certainly not choose it over common lisp or clojure, but maybe over scheme.
The simple syntax of Lisp has only one purpose: easy programmatic manipulation (reading, writing, transformation). I.e., less boilerplate. Let me spell that out for you: EASIER MANIPULATION, LESS BOILERPLATE. Elitist much?
There isn't Yet Another Parser Toolkit Of The Week in the Lisp world, there isn't Yet Another Lexer Utility Of The Month in the Lisp world.
Seriously, writing a bunch of parentheses isn't much harder than writing intricate, complex C-like (C++, Java etc.) syntax structures. How the heck did simplicity became synonym of elitism in the subject of Lisp syntax?
See: many modern languages which have a functional influence but more syntax (Scala, Ruby, Groovy, etc., etc.)
Ruby.
And it's not elitist - it's just not your taste.
P.S. Im starting my own lisp cult, called the cult of the mythical lisp cult, our goal will be to find the holly grail of programming language flame wars: evidence of the mythical lisp cult. See, a joke about lisp, and its recursive too :D
If we look closely, Lisp criticism is a kind of a cult too.
- Criticizing Lisp among them brings social validation
- They make lots of jokes about Lisp, but none about Lisp criticism
- Praising Lisp brings social exclusion
Therefore, Lisp critics are part of a cult. Like many others, they dislike what they don't understand.
This is bullshit. Python can also modify it's own code at runtime and yet it's one of the most package-complete languages. But it has a single defining implementation, so if you write your package, then every Python user will be able to use it.
Have a look at Clojure and the rate it's gaining new libraries. Lisp features don't seem to hinder that. A single implementation (and what follows - non-fragmented community) helps it greatly.
Clojure and certain Scheme implementations prove that X and Y are compatible, but most CLs have atrocious package management when compared with Python, Ruby or even Java. Lisp's extreme flexibility doesn't remedy that at all.
Why would it? I'm not sure I understand the argument.
And also, just for an example: In my experience, Clojure's package management beats Rubygems for purposes of a project. You specify your dependencies and their versions (including the Clojure language itself) and a script updates them from the whatever repos you specify. It's taken the Ruby ecosystem some time to come up with RVM and Bundler which accomplish the same things. These kinds of things (package management) are available for Lisp languages today.
Of course CL only recently got http://www.quicklisp.org/ which seems to make some strides in this area.
Try omitting parenthesis around your Lisp expression. Or try forgetting to balance your parenthesis.
Common Lisp has #: and : and :: and ` vs ' and #+ and #. and a whole slew of others.
The point is, lisps have sometimes been referred to as "syntaxless" historically, for the reason that the grammar is that of the AST, not an arbitrarily designed grammar.
Ie. machine's grammar vs language designer's grammar.
You are right in saying it is not entirely correct to refer to them as syntaxless from a purely technical, linguistic point of view. But by throwing out his point as "technically incorrect", you are missing an important point about lisps.
Also, mentioning tokens that are used in Common Lisp doesn't quite compare to the verbose, heavily syntactical grammar of say, C++. Let me know the next time your lisp implementation throws you something called a "syntax error". You can't even get code to compile when you miss a parenthesis, which takes about three seconds to locate, tops.
Neil Armstrong did not convert to Islam; that's a fabrication.
Cite: Wikipedia makes no mention of this, and Google search reveals many people claiming it's a commonly-believed fabrication.
An elite hacker broke into a government system and found the code of a secret NASA project. He tried to download it, but the sysadmins noticed the intrusion and eventually cut the hacker off. He only managed to get the last 40 kB of the source file and unfortunately, because the project was written in Lisp, it contained nothing but closing parens.
Another version is that the file was stolen by a malicious hacker and help for ransom. As a proof he had the file, he sent the last part of the file. When one of the programmers saw only ")"s he knew the file was authentic.
As for "whatever you're reading this with [...] was written in a variant of C", well, yeah, that's why it's crap that blows up randomly. This is a problem that the industry is very slowly nerving itself to solve.
“So, I can’t find any self-poking jokes about lisp. Self-deprecating Unix jokes, no problem. Jokes about frigging text editors, hilarious. But lisp has nothing but theological proselytizing.”
Richard Gabriel’s “The Rise of ‘Worse is Better,’”[1] while written from the perspective of a lisp lover, informs the “Why is lisp a failure?” question. Mark Tarver’s “The Bipolar Lisp Programmer”[2] is another essay the ruminates on the failures of lisp. And of course there’s the recently-posted-on-HN “How I lost my faith”[3].
I’m struck by how personally lispers take the weaknesses of lisp. In part because I feel the same way, which isn’t surprising given that I'm a lisper—bicycles saved my body, Scheme saved my soul—and have a problem with taking failure very personally.
In conclusion, I don’t think the author knows what he’s talking about.
[1]: http://www.jwz.org/doc/worse-is-better.html
[2]: http://www.lambdassociates.org/blog/bipolar.htm
[3]: http://groups.google.com/group/comp.lang.lisp/msg/6f75cfb5a2...
Based on this misconception he draws the conclusion that the Lisp folks think the C/Unix approach is "evil", which is just silly. Maybe this is why he thinks it's a cult.
I believe it's interesting and informative and deserves more than a cursory pass, but without `Lisp' in the title, it's hard to spot.
"A Lisp cult I almost joined" ?
"A cult I almost joined [Lisp]" ?
Also, there's something to be said for keeping the title as is, as it's a bit more mysterious.. and may pique the reader's interest to find out what the cult is. Putting "Lisp" in the title kind of spoils the surprise.You know, I was just thinking.. this is yet another reason for HN to allow tags. As with tags the title could remain untouched and we'd still be able to categorize it as a Lisp-themed article, and even that it came from 2005.