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

"that Lisp is not already the de-facto programming language is just a reflection of the state of the world as a whole—only a very small percentage of the population are excited for the technological singularity, but the singularity is coming no matter how much people complain."

As a transhumanist myself I resent the arrogance that led to this ridiculous appropriation. Yes, Lisp is pretty great, but the use of other languages is not some grave cultural defect through which you can glimpse at all the badness in the world.

If the goal here is to evangelize Lisp, radiating this kind of pomposity seems like a questionable move because it reflects badly on the community you are trying to win new members for. Worse, this could be interpreted as willful cluelessness in the face of the rich multi-language ecosystem potential readers are living in.

As far as the singularity is concerned, monocultural boneheadedness is not something people associate with technological progress.




I love various Lisps, but I've always enjoyed http://james-iry.blogspot.com/2009/05/brief-incomplete-and-m... :

    > 1958 - John McCarthy and Paul Graham invent LISP. Due to high costs
    > caused by a post-war depletion of the strategic parentheses reserve LISP
    > never becomes popular[1]. In spite of its lack of popularity, LISP (now
    > "Lisp" or sometimes "Arc") remains an influential language in "key
    > algorithmic techniques such as recursion and condescension"[2].


Ignorance of things like Lisp is a cultural defect in computer science. It's just a symptom of a greater problem: lack of awareness of what has already been done by prior generations. If electronics engineering were like CS, some twit would be reinventing the long-tailed differential pair today, and trying to get a patent on it, with full backing from his research institute or employer.


That's not the issue. It's about whether you think that Lisp is the only objectively correct answer whenever the question arises "what language are we going to use for this?".

Willful ignorance about other languages and their features is as much a cultural failure as, the hypothecial, unwillingness to learn about Lisp.


The point is that other languages added little to what Lisp already had to offer over half a century ago.

Every language has its use, but really we ARE wasting time by splitting the worldwide community of programmers in different languages.

Look at how most programmers love one language and advocate it's the best there is. That's called a split.

Aren't we supposed to not reinvent the wheel?


This view only makes sense if you believe one language is enough. One language that has it all figured out, one language that is the right solution for any task.

Even if such a language existed (be it Lisp or not), which is unrealistic, there is still a second aspect to the whole thing: programmers' brains. Different languages map differently to different kinds of brains, and that's a very good reason to explore multiple concepts in itself.

The Split is the natural way to explore a large search space using different strategies. It happens all over nature, and it's the way human-powered research works as well. Monocultures don't perform nearly as well. Yes, there is some effort wasted, but you can rarely ever come to an objective consensus where this waste actually occurs - except, typically, in hindsight.

Also, there is quite a bit of cross-pollination of ideas happening among different environments and languages, so advantageous traits do get passed around beyond their initial ecosystem.

I imagine cross compilers and common runtimes will get more popular, too, now that we have the processing power - and that's also a good strategy do deduplicate effort.

The only thing that really strikes me as a bad strategy is militantly advocating one programming language as the master race. You're not even doing the "pure" in-community a favor by denying that concepts from the outside world might occasionally be useful. Instead members are reduced to armchair criticism along the line of "yeah, nice library, but you didn't write it in Lisp, so at the end of the day nothing at all was achieved."


One language might not be enough, but one nice language plus C --- now you're talking. :) :)


There's a lot of religious imagery in the text with discussion about fractal cosmology, mysticism, Lisp's natural connection with the human mind, etc.

It seems as though the author is trying to sell a religious experience to his readers. If that is the case, that's interesting in the sense that it is certainly unlike any other programming text I've read. I personally think evangelizing Lisp should be in the form of making it more familiar, human, and relatable to the average programmer, but I can't help but to respect the sheer uniqueness of the approach.


>If the goal here is to evangelize Lisp, radiating this kind of pomposity seems like a questionable move because it reflects badly on the community you are trying to win new members for. Worse, this could be interpreted as willful cluelessness in the face of the rich multi-language ecosystem potential readers are living in.

How circular! A Lisper would respond that the very passage you critiqued is the appropriate response to your critique---that Lisp is coming, no matter the tone, and our complaints or praises will have no effect on the final outcome.

Perhaps Lispers would do well to be less pompous, but that is for their welfare, not Lisp's.


You could choose to understand it that way, but only if you want to kill the conversation. Which is fine, of course. Judging by the amount of controversy mirrored in the voting of my comment (I suspect moderator intervention was involved as well), a large number of HNers really do believe that all non-Lisp languages are abominations, that there is no appropriate paradigm besides Lisp's, and that Lisp already contains all the innovations and concepts that could ever be worthwhile. That's an almost cartoonishly narrow way of thinking.

At best, this is a religious point of view, and at worst it's also a matter of being part of the in-group - which means this opinion is calcified because it's a critical part of these programmers' identity.

I generally don't like to comment on these kinds of threads anymore than I would on political or religious ones. However, this thread is about outreach to people outside of the cult. Continually forcing the impression of being a cult might well serve to recruit more followers, but I'm wondering: does it really have to be a dogmatic movement? Isn't the larger opportunity here to try and reach another kind of person?

I know there's a taboo in this community about addressing aggressiveness and arrogance, and maybe that's an excellent policy to prevent flame wars. However, I think it's a mistake to overshoot this target by accepting abrasiveness and fervor as valid replacements for reason and reflection.


Try Lisp. You'll see most modern languages -- Objective C, Ruby, Java, &c -- and not so modern languages as well, don't have much that Lisp doesn't offer. That the pomposity may not be the best way is but a matter of opinion. But features? We can sit down and count those. I encourage you to learn Lisp. It's enlightening.


What makes you think I don't know Lisp? You didn't even read my comments, did you?


Something I find ironic is that Zed Shaw dislikes both haskell and lisp programmers for a variety of reasons that would only provoke if I put them here, some of which you already mentioned. Search "lisp" in second source.

[1]http://lemire.me/blog/archives/2010/05/31/computer-science-i...

[2]http://learnpythonthehardway.org/book/intro.html


Yeah that is kind of funny, but if he finishes it then I can update that intro to point people at his book instead.


MIRI (one of the more well known groups of people serious about the singularity) actually recommend people learn Haskell if they want to contribute to mathematical, statistical, AI research.

http://intelligence.org/courses/

https://github.com/bitemyapp/learnhaskell


You should also learn Scheme, too.

From your link:

> The first self-modifying AIs will hopefully be written in functional programming languages, so learn something useful like Haskell or Scheme.




Join us for AI Startup School this June 16-17 in San Francisco!

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

Search: