<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	>
<channel>
	<title>Comments on: The Failure of Lisp?  A Reply To Brandon Werner</title>
	<atom:link href="http://danweinreb.org/blog/the-failure-of-lisp-a-reply-to-brandon-werner/feed" rel="self" type="application/rss+xml" />
	<link>http://danweinreb.org/blog/the-failure-of-lisp-a-reply-to-brandon-werner</link>
	<description>Software and Innovation</description>
	<pubDate>Wed, 07 Jan 2009 14:44:56 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Dan Weinreb</title>
		<link>http://danweinreb.org/blog/the-failure-of-lisp-a-reply-to-brandon-werner/comment-page-1#comment-1902</link>
		<dc:creator>Dan Weinreb</dc:creator>
		<pubDate>Sat, 29 Nov 2008 20:16:52 +0000</pubDate>
		<guid isPermaLink="false">http://danweinreb.org/blog/?p=57#comment-1902</guid>
		<description>Chris; we don't do anything too special.  If you read Practical Common Lisp, we pretty much follow that kind of programming style.  We use Subversion for source control.  We have unit tests, and before committing any code, it must be reviewed and unit-tested.  Then we have a continuously-running "buildbot", a server that continuously rebuilds the code and runs a larger (slower) set of unit tests on it, and emails whomever might be responsible.  We also have a "performance buildbot" that checks for performance regressions.  Every night we have automatic tools that snapshot the whole system, including all the components (only the big business-layer component is written in Lisp), package it up, distribute it to the appropriate machines in a cluster, and run system-level tests over the whole thing.  All this automatic testing is extremely valuable. We use Bugzilla to track bugs (and sometimes enhancement requests).</description>
		<content:encoded><![CDATA[<p>Chris; we don&#8217;t do anything too special.  If you read Practical Common Lisp, we pretty much follow that kind of programming style.  We use Subversion for source control.  We have unit tests, and before committing any code, it must be reviewed and unit-tested.  Then we have a continuously-running &#8220;buildbot&#8221;, a server that continuously rebuilds the code and runs a larger (slower) set of unit tests on it, and emails whomever might be responsible.  We also have a &#8220;performance buildbot&#8221; that checks for performance regressions.  Every night we have automatic tools that snapshot the whole system, including all the components (only the big business-layer component is written in Lisp), package it up, distribute it to the appropriate machines in a cluster, and run system-level tests over the whole thing.  All this automatic testing is extremely valuable. We use Bugzilla to track bugs (and sometimes enhancement requests).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chris</title>
		<link>http://danweinreb.org/blog/the-failure-of-lisp-a-reply-to-brandon-werner/comment-page-1#comment-1611</link>
		<dc:creator>Chris</dc:creator>
		<pubDate>Tue, 18 Nov 2008 21:45:34 +0000</pubDate>
		<guid isPermaLink="false">http://danweinreb.org/blog/?p=57#comment-1611</guid>
		<description>How do you manage it? I mean, what kind of coding conventions and style rules do you guys use to aid in code creation and maintenance? I’m genuinely curious. Any suggestions or recommendations would be very helpful to me. I have recently become very interested in Common Lisp, and it is currently the only language I want to program in when I have spare time. Do you recommend any way that I can become involved in “cleaning up” the Lisp image?
Great post!</description>
		<content:encoded><![CDATA[<p>How do you manage it? I mean, what kind of coding conventions and style rules do you guys use to aid in code creation and maintenance? I’m genuinely curious. Any suggestions or recommendations would be very helpful to me. I have recently become very interested in Common Lisp, and it is currently the only language I want to program in when I have spare time. Do you recommend any way that I can become involved in “cleaning up” the Lisp image?<br />
Great post!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: 3 Noteworthy Indian Web Companies &#124; TechSutra</title>
		<link>http://danweinreb.org/blog/the-failure-of-lisp-a-reply-to-brandon-werner/comment-page-1#comment-1546</link>
		<dc:creator>3 Noteworthy Indian Web Companies &#124; TechSutra</dc:creator>
		<pubDate>Sun, 16 Nov 2008 14:28:29 +0000</pubDate>
		<guid isPermaLink="false">http://danweinreb.org/blog/?p=57#comment-1546</guid>
		<description>[...] user feedback quite seriously.Cleartrip is also one of the handful of companies in India who have based their software stack on Lisp. That in my opinion is worth some brownie points. They are also the [...]</description>
		<content:encoded><![CDATA[<p>[...] user feedback quite seriously.Cleartrip is also one of the handful of companies in India who have based their software stack on Lisp. That in my opinion is worth some brownie points. They are also the [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kfz Versicherung</title>
		<link>http://danweinreb.org/blog/the-failure-of-lisp-a-reply-to-brandon-werner/comment-page-1#comment-894</link>
		<dc:creator>Kfz Versicherung</dc:creator>
		<pubDate>Sun, 05 Oct 2008 07:07:33 +0000</pubDate>
		<guid isPermaLink="false">http://danweinreb.org/blog/?p=57#comment-894</guid>
		<description>I have bookmarked this informativ site. Thanks Kfz Versicherung</description>
		<content:encoded><![CDATA[<p>I have bookmarked this informativ site. Thanks Kfz Versicherung</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: John Pallister</title>
		<link>http://danweinreb.org/blog/the-failure-of-lisp-a-reply-to-brandon-werner/comment-page-1#comment-833</link>
		<dc:creator>John Pallister</dc:creator>
		<pubDate>Mon, 29 Sep 2008 12:18:57 +0000</pubDate>
		<guid isPermaLink="false">http://danweinreb.org/blog/?p=57#comment-833</guid>
		<description>I think everyone's missing the point. Modern systems can (and probably should) be developed using multiple languages, according to the "don't re-invent any wheels" principle (I'm using Lisp, C++, XSLT, Flash/Flex/Actionscript &#38; XHTML/CSS/JavaScript for my current project - to limit myself to a single language would be stupid). If your project/brief/itch matches the 99% of "real world" tasks, just choose the language(s)/framework(s)/etc. that'll get it finished ASAP.

The magic of Lisp is that you can use it to make software that you just can't make in other languages (including those other languages). But most programmers never need to (and specifically don't want to) create software the likes of which the world has never seen, which is fine. If you want libraries, lambdas and LAMP, use Python, for God's sake. If it's good enough for Peter Norvig, it's good enough.

Worse is indeed better (just look at PHP); but popularity is overrated. I've been programming for 20 years, and I can afford LispWorks Pro *and* its annual maintenance contract. (And if I couldn't, and/or if I wasn't required to use Windows, I'd be using SBCL, end of story.) I'd love to get more Lisp work and work with more Lispers, but I couldn't give a wet slap whether Lisp is more or less popular than any other language. As they say, "when the student is ready, the master will appear"; it isn't that hard to learn Lisp if you put your mind to it. I did, and I'm no Bram Cohen.</description>
		<content:encoded><![CDATA[<p>I think everyone&#8217;s missing the point. Modern systems can (and probably should) be developed using multiple languages, according to the &#8220;don&#8217;t re-invent any wheels&#8221; principle (I&#8217;m using Lisp, C++, XSLT, Flash/Flex/Actionscript &amp; XHTML/CSS/JavaScript for my current project - to limit myself to a single language would be stupid). If your project/brief/itch matches the 99% of &#8220;real world&#8221; tasks, just choose the language(s)/framework(s)/etc. that&#8217;ll get it finished ASAP.</p>
<p>The magic of Lisp is that you can use it to make software that you just can&#8217;t make in other languages (including those other languages). But most programmers never need to (and specifically don&#8217;t want to) create software the likes of which the world has never seen, which is fine. If you want libraries, lambdas and LAMP, use Python, for God&#8217;s sake. If it&#8217;s good enough for Peter Norvig, it&#8217;s good enough.</p>
<p>Worse is indeed better (just look at PHP); but popularity is overrated. I&#8217;ve been programming for 20 years, and I can afford LispWorks Pro *and* its annual maintenance contract. (And if I couldn&#8217;t, and/or if I wasn&#8217;t required to use Windows, I&#8217;d be using SBCL, end of story.) I&#8217;d love to get more Lisp work and work with more Lispers, but I couldn&#8217;t give a wet slap whether Lisp is more or less popular than any other language. As they say, &#8220;when the student is ready, the master will appear&#8221;; it isn&#8217;t that hard to learn Lisp if you put your mind to it. I did, and I&#8217;m no Bram Cohen.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ala'a</title>
		<link>http://danweinreb.org/blog/the-failure-of-lisp-a-reply-to-brandon-werner/comment-page-1#comment-784</link>
		<dc:creator>ala'a</dc:creator>
		<pubDate>Thu, 25 Sep 2008 18:56:30 +0000</pubDate>
		<guid isPermaLink="false">http://danweinreb.org/blog/?p=57#comment-784</guid>
		<description>i've asked on #lisp and c.l.l and got good answer for every good question i asked.

regarding the problem of 'batteries included' can be solved with a hint from the text below from Erik: 

  "the reason there _are_ a bunch of "libraries" and packages for all those ****** languages is that people probably didn't feel bad about not having something nice, so they went ahead and made something ugly but at least functional.  now, everyone's happy, right?  why not repeat this for *Common Lisp*, too? "
qouted from http://groups.google.no/group/comp.lang.lisp/msg/4bda6a98e5cf0bce</description>
		<content:encoded><![CDATA[<p>i&#8217;ve asked on #lisp and c.l.l and got good answer for every good question i asked.</p>
<p>regarding the problem of &#8216;batteries included&#8217; can be solved with a hint from the text below from Erik: </p>
<p>  &#8220;the reason there _are_ a bunch of &#8220;libraries&#8221; and packages for all those ****** languages is that people probably didn&#8217;t feel bad about not having something nice, so they went ahead and made something ugly but at least functional.  now, everyone&#8217;s happy, right?  why not repeat this for *Common Lisp*, too? &#8221;<br />
qouted from <a href="http://groups.google.no/group/comp.lang.lisp/msg/4bda6a98e5cf0bce" rel="nofollow">http://groups.google.no/group/comp.lang.lisp/msg/4bda6a98e5cf0bce</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dan Weinreb</title>
		<link>http://danweinreb.org/blog/the-failure-of-lisp-a-reply-to-brandon-werner/comment-page-1#comment-779</link>
		<dc:creator>Dan Weinreb</dc:creator>
		<pubDate>Thu, 25 Sep 2008 11:14:17 +0000</pubDate>
		<guid isPermaLink="false">http://danweinreb.org/blog/?p=57#comment-779</guid>
		<description>Ken: You might want to check out www.lispforum.com.</description>
		<content:encoded><![CDATA[<p>Ken: You might want to check out <a href="http://www.lispforum.com" rel="nofollow">http://www.lispforum.com</a>.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ken</title>
		<link>http://danweinreb.org/blog/the-failure-of-lisp-a-reply-to-brandon-werner/comment-page-1#comment-773</link>
		<dc:creator>Ken</dc:creator>
		<pubDate>Wed, 24 Sep 2008 22:09:59 +0000</pubDate>
		<guid isPermaLink="false">http://danweinreb.org/blog/?p=57#comment-773</guid>
		<description>"I am one of those 50 year old men.  (Well, I’ll be 50 in January, and I don’t use IRC.)" and: "to me it seems that people do get answers on comp.lang.lisp and LispForum, and the tone doesn’t seem so nasty to me, usually."

A-ha!  Here's the disconnect.  Perhaps all the old, nice Lisp hackers who are welcoming to newbies hang out on USENET, and all the smug jerks hang out on IRC.  (I've had bad experiences on #lisp, too.)

Where's a newbie more likely to go?  As much as I love USENET, "we" (speaking as someone younger than 30) grew up with computers and want instant gratification, and that means IRC.  If people are rude to us on IRC, we're not likely to say "well, it's probably just IRC; I bet USENET has nicer people".  :-)

I wonder if #lisp can be fixed, or if we should spend our energy convincing people to try out comp.lang.lisp first instead.  I suspect the more likely fix is that somebody will come up with a killer library for Lisp (a la Rails for Ruby), and people will flock to the IRC channel for that library, and we'll just route around the meanness while not abandoning IRC altogether.</description>
		<content:encoded><![CDATA[<p>&#8220;I am one of those 50 year old men.  (Well, I’ll be 50 in January, and I don’t use IRC.)&#8221; and: &#8220;to me it seems that people do get answers on comp.lang.lisp and LispForum, and the tone doesn’t seem so nasty to me, usually.&#8221;</p>
<p>A-ha!  Here&#8217;s the disconnect.  Perhaps all the old, nice Lisp hackers who are welcoming to newbies hang out on USENET, and all the smug jerks hang out on IRC.  (I&#8217;ve had bad experiences on #lisp, too.)</p>
<p>Where&#8217;s a newbie more likely to go?  As much as I love USENET, &#8220;we&#8221; (speaking as someone younger than 30) grew up with computers and want instant gratification, and that means IRC.  If people are rude to us on IRC, we&#8217;re not likely to say &#8220;well, it&#8217;s probably just IRC; I bet USENET has nicer people&#8221;.  <img src='http://danweinreb.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>I wonder if #lisp can be fixed, or if we should spend our energy convincing people to try out comp.lang.lisp first instead.  I suspect the more likely fix is that somebody will come up with a killer library for Lisp (a la Rails for Ruby), and people will flock to the IRC channel for that library, and we&#8217;ll just route around the meanness while not abandoning IRC altogether.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dang The Man</title>
		<link>http://danweinreb.org/blog/the-failure-of-lisp-a-reply-to-brandon-werner/comment-page-1#comment-743</link>
		<dc:creator>Dang The Man</dc:creator>
		<pubDate>Mon, 22 Sep 2008 21:35:27 +0000</pubDate>
		<guid isPermaLink="false">http://danweinreb.org/blog/?p=57#comment-743</guid>
		<description>speaking as someone who's done a moderate amount of work with the Lisps, primarily Scheme or Scheme-ish ones, and who is now working with Haskell (and will probably work with the Lisps again in the future), here's where I think the Lisps have more or less fumbled the ball.

1. No strong primary implementation.

you don't have to have to have a dictator (Haskell does not, SPJ is at best a revered and respected figure), and you don't have to have a single implementation.

but you do have to have a very strong, preferrably free/open implementation that's licensed under very liberal terms (read BSD3/MIT). There are a number of devs and researchers who don't work on OCaml for the license reason because it has a wonky Q License, and if you're an up and coming language you need all the devs and researchers you can get.

I don't have to fuck around with deciding if I want to use SBCL, CMUCL, Clozure Common Lisp, or whatever since I'm on a Mac. I don't have to contemplate purchasing expensive semi-crippled Lisp packages to get good integrated OS support and all the goodies. I don't have to switch my compiler suite to something else if I'm working on Linux/FBSD, or Windows.

I don't have to navigate the huge duplication of effort in the Scheme community where there are probably double the number of credible systems compared to CL.

I just use ghc. In fact, more or less everyone uses ghc. There are other implementations of Haskell that try to do things ghc won't or can't (strong embedded support, or highly advanced optimizations) but there are generally strong reasons for branching off, and even if they fail, so what? I still have ghc.

Haskell is also standardized in the H98 and future Haskell Prime efforts. And unlike the ANSI process, it is recognized these standards are not immutably fixed in stone because they're too damn expensive to update with another standard.

unlike the R6RS effort, Haskell standardization has been generally agreeable to most parties and hasn't alienated significant parts of the community. 

Haskell was more or less founded on a recognition that many researchers were experimenting with lazy functional languages and it was going to end with an unnecessary amount of duplication and result in underserving of that niche, and it's a lesson everyone who wants to roll their own Lisp for use as opposed to learning should learn.

You get good features and good optimization in a compiler by have a good design that can updated as needs change, and by having lots of really smart people bang away at it for a good long time.

there are just as many smart people in the Lisp communities as the Haskell community, but the Lisp implementing talents are being spread thin.

It would be nice if the Scheme/CL debate could be ended by all parties. Maybe we can all agree to agree around Clojure. But deciding on an agreeable reference implementation for both CL and Scheme would be a major step if harmony can't be achieved. CL seems to be solidifying around SBCL for free/open support, and asdf has real promise. The Scheme situation looks to stay fragmented and even induce more fragmentation around R6RS support and whether a implementation has decided to go along with it or not..

basically, just _fucking pick something_. It's not going to make everyone happy but it should make most people happy. People will build new implementations to support special cases as necessary, but most people should be working on a common implementation.

2. No batteries included. It's not a coincidence you're using that phrase right now - it's more or less become a battlecry in the Haskell community, and OCaml is now working feverishly to catch up and remain competitive in those terms.

Haskell is building infrastructure that may eventually put CPAN to shame, and at the very least in it's current state can compete with offerings from Python and Ruby in quality of experience if not in library size.

instead of writing software that only works on one Scheme implementation or hasn't been ported to your current CL compiler of choice, you end up deploying software that works for all Haskell users and that, most importantly, other Haskell users can build bigger and better things on.

both CL and Scheme need really good library support RIGHT NOW, and using the current methods are not going to get them anywhere near that goal. Haskell has already leapfrogged them and is shooting towards Ruby-like levels, and I'm quite sure they are already making plans on where to go after getting there..

3. Community Friendliness

This is a big win for Haskell and a mixed bag for Lisp. Scheme is generally more friendly than Lisp since it was used as a teaching language for undergrads. I'm not sure there's much difference between Scheme and Haskell really in terms of language community friendliness.

comp.lang.lisp should just bounce new posters onto gigamonkey's site and a reference to PCL and #lisp on freenode with a sign "We're Closed". I wrote a rant, but I realized doing so put me on their level, so I'll just say this -

I think it's pretty self-evident that if you want people to drink your koolaid you better keep the True Believers locked up in the basement before they scare off the less committed first. It might be full of delicious sugar and s-expressions, but it doesn't go well with poisonous words.

#lisp on freenode is nice enough. It's not perfect but new people are treated reasonably well and I've felt safe to direct new people there. #scheme is also good. If you want to talk about communities that can get more people into the language, start there. The slow death of Usenet as a credible place for discussing technical topics is probably a hidden benefit for the Lisp language community.

also gigamonkey is a fucking saint and c.l.l people should spend less time arguing and more time getting him canonized and/or funding his projects for making Lisp easier to grasp and more appealing to new programmers, at least if they really want a better Lisp.

#haskell is famously friendly, has almost more users than #lisp and #scheme combined on that network, and has gone so far as to ban highly talented but persistently socially disruptive members that many other online communities would and have simply tolerated as a source of knowledge (this isn't a dig at Lisp communities, more like evidence that people in the #haskell channel are sticking to their guns about staying friendly).

4. A real plan for massive multicore -

Termite Scheme has one. There are effort to implement Erlang-style parallelism in CL along with STM for concurrency. But Haskell offers an embarrassment of riches for solving these problems, has very good support for them, and is managing to build massive threading systems that make Erlang's processes look heavyweight. 

In fact it's becoming something of a research testbed for massive multicore.

that brings me to another issue.

5. The research fire is gone

there is not a lot of new research action happening in the Lisps. The main trend in theoretical CS languages research is going toward pure functions, more complex and powerful static typing systems, and massive multicore requrements. Guess which languages this favors?

Someone needs to start beating the Lisps with a electrified cattle prod, getting researchers to start extending and evolving the language in new directions and taking it to new heights. I don't expect the old school guys to do it, they've put their time in and deserve a rest, but if there are no Young Turks who take up their place and start revolutionizing the language, the language is going to increasingly fall into academic disfavor and disuse, with negative results on the language community. Sadly, I also know I'm not the one to do it.

Qi is at least interesting.

in short - the Lisps aren't dead. And macros ensure that, for certain work that needs that kind of flexibility, they won't die anytime soon. But they are losing real ground to languages with communities that are not subject to many of the dysfunctions the Lisp community has and have their own brand of power, flexibility, and beauty, and have in theory only been in any kind of practically usable state for much less time than even modern Lisps like CL and Scheme have existed.

don't take this as a hostile criticism or a insult, because it's not intended to be. Take this as your warcry as things start get fixed....</description>
		<content:encoded><![CDATA[<p>speaking as someone who&#8217;s done a moderate amount of work with the Lisps, primarily Scheme or Scheme-ish ones, and who is now working with Haskell (and will probably work with the Lisps again in the future), here&#8217;s where I think the Lisps have more or less fumbled the ball.</p>
<p>1. No strong primary implementation.</p>
<p>you don&#8217;t have to have to have a dictator (Haskell does not, SPJ is at best a revered and respected figure), and you don&#8217;t have to have a single implementation.</p>
<p>but you do have to have a very strong, preferrably free/open implementation that&#8217;s licensed under very liberal terms (read BSD3/MIT). There are a number of devs and researchers who don&#8217;t work on OCaml for the license reason because it has a wonky Q License, and if you&#8217;re an up and coming language you need all the devs and researchers you can get.</p>
<p>I don&#8217;t have to fuck around with deciding if I want to use SBCL, CMUCL, Clozure Common Lisp, or whatever since I&#8217;m on a Mac. I don&#8217;t have to contemplate purchasing expensive semi-crippled Lisp packages to get good integrated OS support and all the goodies. I don&#8217;t have to switch my compiler suite to something else if I&#8217;m working on Linux/FBSD, or Windows.</p>
<p>I don&#8217;t have to navigate the huge duplication of effort in the Scheme community where there are probably double the number of credible systems compared to CL.</p>
<p>I just use ghc. In fact, more or less everyone uses ghc. There are other implementations of Haskell that try to do things ghc won&#8217;t or can&#8217;t (strong embedded support, or highly advanced optimizations) but there are generally strong reasons for branching off, and even if they fail, so what? I still have ghc.</p>
<p>Haskell is also standardized in the H98 and future Haskell Prime efforts. And unlike the ANSI process, it is recognized these standards are not immutably fixed in stone because they&#8217;re too damn expensive to update with another standard.</p>
<p>unlike the R6RS effort, Haskell standardization has been generally agreeable to most parties and hasn&#8217;t alienated significant parts of the community. </p>
<p>Haskell was more or less founded on a recognition that many researchers were experimenting with lazy functional languages and it was going to end with an unnecessary amount of duplication and result in underserving of that niche, and it&#8217;s a lesson everyone who wants to roll their own Lisp for use as opposed to learning should learn.</p>
<p>You get good features and good optimization in a compiler by have a good design that can updated as needs change, and by having lots of really smart people bang away at it for a good long time.</p>
<p>there are just as many smart people in the Lisp communities as the Haskell community, but the Lisp implementing talents are being spread thin.</p>
<p>It would be nice if the Scheme/CL debate could be ended by all parties. Maybe we can all agree to agree around Clojure. But deciding on an agreeable reference implementation for both CL and Scheme would be a major step if harmony can&#8217;t be achieved. CL seems to be solidifying around SBCL for free/open support, and asdf has real promise. The Scheme situation looks to stay fragmented and even induce more fragmentation around R6RS support and whether a implementation has decided to go along with it or not..</p>
<p>basically, just _fucking pick something_. It&#8217;s not going to make everyone happy but it should make most people happy. People will build new implementations to support special cases as necessary, but most people should be working on a common implementation.</p>
<p>2. No batteries included. It&#8217;s not a coincidence you&#8217;re using that phrase right now - it&#8217;s more or less become a battlecry in the Haskell community, and OCaml is now working feverishly to catch up and remain competitive in those terms.</p>
<p>Haskell is building infrastructure that may eventually put CPAN to shame, and at the very least in it&#8217;s current state can compete with offerings from Python and Ruby in quality of experience if not in library size.</p>
<p>instead of writing software that only works on one Scheme implementation or hasn&#8217;t been ported to your current CL compiler of choice, you end up deploying software that works for all Haskell users and that, most importantly, other Haskell users can build bigger and better things on.</p>
<p>both CL and Scheme need really good library support RIGHT NOW, and using the current methods are not going to get them anywhere near that goal. Haskell has already leapfrogged them and is shooting towards Ruby-like levels, and I&#8217;m quite sure they are already making plans on where to go after getting there..</p>
<p>3. Community Friendliness</p>
<p>This is a big win for Haskell and a mixed bag for Lisp. Scheme is generally more friendly than Lisp since it was used as a teaching language for undergrads. I&#8217;m not sure there&#8217;s much difference between Scheme and Haskell really in terms of language community friendliness.</p>
<p>comp.lang.lisp should just bounce new posters onto gigamonkey&#8217;s site and a reference to PCL and #lisp on freenode with a sign &#8220;We&#8217;re Closed&#8221;. I wrote a rant, but I realized doing so put me on their level, so I&#8217;ll just say this -</p>
<p>I think it&#8217;s pretty self-evident that if you want people to drink your koolaid you better keep the True Believers locked up in the basement before they scare off the less committed first. It might be full of delicious sugar and s-expressions, but it doesn&#8217;t go well with poisonous words.</p>
<p>#lisp on freenode is nice enough. It&#8217;s not perfect but new people are treated reasonably well and I&#8217;ve felt safe to direct new people there. #scheme is also good. If you want to talk about communities that can get more people into the language, start there. The slow death of Usenet as a credible place for discussing technical topics is probably a hidden benefit for the Lisp language community.</p>
<p>also gigamonkey is a fucking saint and c.l.l people should spend less time arguing and more time getting him canonized and/or funding his projects for making Lisp easier to grasp and more appealing to new programmers, at least if they really want a better Lisp.</p>
<p>#haskell is famously friendly, has almost more users than #lisp and #scheme combined on that network, and has gone so far as to ban highly talented but persistently socially disruptive members that many other online communities would and have simply tolerated as a source of knowledge (this isn&#8217;t a dig at Lisp communities, more like evidence that people in the #haskell channel are sticking to their guns about staying friendly).</p>
<p>4. A real plan for massive multicore -</p>
<p>Termite Scheme has one. There are effort to implement Erlang-style parallelism in CL along with STM for concurrency. But Haskell offers an embarrassment of riches for solving these problems, has very good support for them, and is managing to build massive threading systems that make Erlang&#8217;s processes look heavyweight. </p>
<p>In fact it&#8217;s becoming something of a research testbed for massive multicore.</p>
<p>that brings me to another issue.</p>
<p>5. The research fire is gone</p>
<p>there is not a lot of new research action happening in the Lisps. The main trend in theoretical CS languages research is going toward pure functions, more complex and powerful static typing systems, and massive multicore requrements. Guess which languages this favors?</p>
<p>Someone needs to start beating the Lisps with a electrified cattle prod, getting researchers to start extending and evolving the language in new directions and taking it to new heights. I don&#8217;t expect the old school guys to do it, they&#8217;ve put their time in and deserve a rest, but if there are no Young Turks who take up their place and start revolutionizing the language, the language is going to increasingly fall into academic disfavor and disuse, with negative results on the language community. Sadly, I also know I&#8217;m not the one to do it.</p>
<p>Qi is at least interesting.</p>
<p>in short - the Lisps aren&#8217;t dead. And macros ensure that, for certain work that needs that kind of flexibility, they won&#8217;t die anytime soon. But they are losing real ground to languages with communities that are not subject to many of the dysfunctions the Lisp community has and have their own brand of power, flexibility, and beauty, and have in theory only been in any kind of practically usable state for much less time than even modern Lisps like CL and Scheme have existed.</p>
<p>don&#8217;t take this as a hostile criticism or a insult, because it&#8217;s not intended to be. Take this as your warcry as things start get fixed&#8230;.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mikael Jansson</title>
		<link>http://danweinreb.org/blog/the-failure-of-lisp-a-reply-to-brandon-werner/comment-page-1#comment-726</link>
		<dc:creator>Mikael Jansson</dc:creator>
		<pubDate>Sun, 21 Sep 2008 17:04:56 +0000</pubDate>
		<guid isPermaLink="false">http://danweinreb.org/blog/?p=57#comment-726</guid>
		<description>skillet-thief,

Agreed. The reason newbies find the communities so ... hostile, is because quite often the wrong questions are asked -- fixing a symptom, instead of the underlying, actual, problem.</description>
		<content:encoded><![CDATA[<p>skillet-thief,</p>
<p>Agreed. The reason newbies find the communities so &#8230; hostile, is because quite often the wrong questions are asked &#8212; fixing a symptom, instead of the underlying, actual, problem.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
