On Wed, 27 May 2009 11:31:07 -0700, Jason Dusek
jason.du...@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
http://research.microsoft.com/en-us/um/people/simonpj/papers/history-of-haskell/history.pdf)
(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.
http://research.microsoft.com/en-us/um/people/simonpj/papers/history-of-haskell/history.pdf
[2] Hamilton, Naomi. The A-Z of Programming Languages: Haskell.
_Computerworld_. 19 September 2008. 28 May 2009.
http://www.computerworld.com.au/article/261007/-z_programming_languages_haskell?pp=10
--
Benjamin L. Russell / DekuDekuplex at Yahoo dot com
http://dekudekuplex.wordpress.com/
Translator/Interpreter / Mobile: +011 81 80-3603-6725
Furuike ya, kawazu tobikomu mizu no oto.
-- Matsuo Basho^
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe