"Brian Hulley" <[EMAIL PROTECTED]> writes: > Also, the bottom line imho is that Haskell is a difficult language to > understand, and this is compounded by the apparent cleverness of > unreadable code like: > > c = (.) . (.) > > when a normal person would just write: > > c f g a b = f (g a b)
All mainstream languages are also difficult to understand, with similarly clever, unreadable code. Let's have a fun quiz! Guess the mainstream languages in question: 0. What language would allow 4["hello world"] when a normal person would just write "hello world"[4] I first saw this in Dr. Dobb's Journal a decade ago; the author said that someone actually used it in interviews! 1. What language, supporting a kind of both parametric polymorphism and subclass polymorphism, allows and actually features such a class declaration as class Enum<T extends Enum<T>> { ... } 2. What language allows you to test primality in constant runtime? That is, move all the work to compile time, using its polymorphism. * * * I have programmed and watched programming for more than two decades. I have observed that the rise and fall of popularity is, of course, driven by many factors: cultural, social, economical, religious, political, propagandic, ... but superiority is never one of them. (Library abundance is, I say, less of a cause and more of an effect. You have some popularity and then you have more contributors; conversely you lose popularity and then you lose authors. Yes there is some feeding back, but the bootstrapping is more significant. Perl has a large library, but that's because it has got an impressive following. And where did that following come from? Mostly economic (there was a demand, a niche) and religious ("it's like natural languages").) Recall that some decent technology that once attained as much as 49% market share could still decline and vanish in less than a decade. I am referring to Betamax video tapes. It lost to VHS video tapes, of lesser picture quality and 51% market share. What did Betamax miss? Apparently, nothing. It seems that the only difference you can put your finger at - and even this is elusive - is price. VHS was slightly cheaper, and apparently that did it. If you were born after Betamax had vanished, I congratulate you, on two counts. First, you skipped the dark age during which there was no Haskell, no Gofer, not even Scheme; there was Lisp but even then not all functions were first-class. Second, don't feel bad about missing the video war, as you will soon see an even better one, this time between Blu-Ray and HD-DVD. Any bet? I am trying to say this, with much foregoing digression: we could equip Haskell with the perfect library, the perfect IDEs and tools, the perfect tutorials and examples, the license that pleases everyone... every nice thing mentioned in this thread, and it may still not become popular. Betamax had everything and 49% market share (if Haskell had 49% mind share, we would be really thrilled, right?), and it could still vanish. How to make Haskell more popular? How to make anything at all more popular? I am inclined to think it's a purely social question. Nothing short of a rigorous social science can answer it. All the nice things mentioned in this thread, we should strive to build for our own sake of course, but they don't answer the question. I have long stopped asking that question. Once again, I say we should strive to build all the missing things mentioned. What impact will they make to the grand scheme of things, we don't know. If there will be none, don't be surprised; it's life. One day we may have a rigorous social science that can explain it. Until then, I share with you a line a Greek friend puts in his .plan file: Man plans and God laughs. * * * Answers to quiz: 0. http://c-faq.com/aryptr/joke.html 1. http://weblogs.java.net/blog/arnold/archive/2005/06/generics_consid_1.html 2. http://homepage.mac.com/sigfpe/Computing/peano.html _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe