[Haskell-cafe] Re: We tried this functional, higher-order stuff with LISP and look what happened...

Benjamin L.Russell DekuDekuplex at Yahoo.com
Thu May 28 03:16:46 EDT 2009

On Wed, 27 May 2009 11:31:07 -0700, Jason Dusek
<jason.dusek at gmail.com> wrote:

>  What can we say to that? I'm well practiced in handling those
>  who reject types outright (Python programmers), those who
>  reject what is too different (C programmers), those who can
>  not live without objects (Java programmers), those who insist
>  we must move everything to message passing (Erlang
>  programmers). It's not too often that I meet an embittered
>  LISP programmer -- one who's well acquainted with a bold and
>  well-supported community of functional programmers whose
>  shooting star soon descended to dig a smoking hole in the
>  ground.
>  Who's to say Haskell (and the more typeful languages in
>  general) do not find themselves in the same situation in just
>  a few years' time? Is avoiding success at all costs really
>  enough?

First off, the real meaning of the slogan "Avoid success at all costs"
is actually "We want lots of users, but not so many that we can't
change anything anymore."  According to [1] (see
(see page 10), 

>The fact that Haskell has, thus far, managed the tension between
>these two strands of development [as a mature language, and as a 
>laboratory in which to explore advanced language design ideas] is 
>perhaps due to an accidental virtue: Haskell has not become too 
>successful. The trouble with runaway success, such as that of Java, 
>is that you get too many users, and the language becomes bogged 
>down in standards, user groups, and legacy issues. In contrast, the 
>Haskell community is small enough, and agile enough, that it usually 
>not only absorbs language changes but positively welcomes them: 
>it’s like throwing red meat to hyenas.

One of the authors of the above-mentioned paper, Simon Peyton-Jones,
elaborates in [2] as follows:

>... Haskell has a sort of unofficial slogan: avoid success at all 
>costs. I think I mentioned this at a talk I gave about Haskell a 
>few years back and it’s become sort of a little saying. When you 
>become too well known, or too widely used and too successful 
>(and certainly being adopted by Microsoft means such a thing), 
>suddenly you can’t change anything anymore. You get caught 
>and spend ages talking about things that have nothing to do 
>with the research side of things.
>I’m primarily a programming language researcher, so the fact that 
>Haskell has up to now been used for just university types has 
>been ideal. Now it’s used a lot in industry but typically by people 
>who are generally flexible, and they are a generally a self selected 
>rather bright group. What that means is that we could change 
>the language and they wouldn’t complain. Now, however, they’re 
>starting to complain if their libraries don’t work, which means that 
>we’re beginning to get caught in the trap of being too successful.
>Haskell has a sort of unofficial slogan: avoid success at all costs
>What I’m really trying to say is that the fact Haskell hasn’t become 
>a real mainstream programming language, used by millions of 
>developers, has allowed us to become much more nimble, and 
>from a research point of view, that’s great. We have lots of 
>users so we get lots of experience from them. What you want 
>is to have a lot of users but not too many from a research point 
>of view -- hence the avoid success at all costs. 

What makes you think that Haskell is likely eventually to "dig a
smoking hole in the ground?"

-- Benjamin L. Russell

[1] Hudak, Paul, Hughes, John, Peyton Jones, Simon, and Wadler,
Philip. "A History of Haskell: Being Lazy With Class." San Diego,
California: _The Third ACM SIGPLAN History of Programming Languages
Conference (HOPL-III)_ (2007): 12-1 - 12-55, 2007.

[2] Hamilton, Naomi. "The A-Z of Programming Languages: Haskell."
_Computerworld_. 19 September 2008. 28 May 2009.
Benjamin L. Russell  /   DekuDekuplex at Yahoo dot com
Translator/Interpreter / Mobile:  +011 81 80-3603-6725
"Furuike ya, kawazu tobikomu mizu no oto." 
-- Matsuo Basho^ 

More information about the Haskell-Cafe mailing list