You misunderstood my point. The browser, BigTable clone, and peer-to- peer networking libraries are starting points for applications -- ones that I've actually needed at various points in my career. You can grab them and start developing with them in a few minutes. If you want these components (or 100 others) in Haskell, you're going to have to write them yourself (at a cost of several to dozens of man years), or at least write sucky imperative wrappers around existing C libraries, compile those libraries, develop a cross-platform build process, be prepared to fix bugs in multiple languages, etc.

Hackage is great, except when it's not, which is most of the time. No one's bit off the really big projects. In fact, they get voted down on the Reddit Haskell proposals, because somehow really practical software like an AMQP client isn't "cool" enough.

Haskell's great for small applications that don't need specialized libraries (and apparently, for small segments of the financial industry). For other applications, it usually cannot compete economically with other, vastly technically inferior languages like Java.

Regards,

John A. De Goes
N-Brain, Inc.
The Evolution of Collaboration

http://www.n-brain.net    |    877-376-2724 x 101

On Sep 28, 2009, at 10:56 AM, Curt Sampson wrote:

Ok, my last post on this for real this time.

On 2009-09-28 08:13 -0600 (Mon), John A. De Goes wrote:

Let me ask you this question: how long would it take you to get an
HTML/CSS, W3 compliant browser in Haskell?

A long time. On the other hand, by grabbing a copy of Mozilla, I'll have
one far faster than you'll have yours in Java, mine will work a lot
better, run more quickly, and work better with most sites.

While I advocate using Haskell, I don't advocate being silly.

(Incidently, I have direct experience with an almost exactly parallel
situation. I replaced a system that was thousands of lines of
difficult-to-maintain Java code with a few hundred lines of Haskell that
feed Microsoft Excel. The user is very pleased that he can now can do
far more extensive tweaking of the UI himself, including major features
he never had at all before, such as real-time graphing of the data.)

Or how about a peer-to-peer networking system with seamless scaling
and automatic failover?

Can you give me an example of a real-life system using this you've set
up in "a few minutes"? My experience building systems with similar
things (the very mature and proven MogileFS suite of tools) has been
that the libraries were nice, but did not solve the majority, or even a
large minority, of the problem.

Libraries are _everything_. In many cases, they can increase your
effective budget by 10x or even 100x.

Or the other way around, as I've seen by ripping out thousands of lines
of Hibernate code, and all of the work done to adapt a system to that
model, and replace it with a few hundred lines of SQL and JDBC calls.
That library has probably wasted more man-years than anything else I've
seen in the Java world.

cjs
--
Curt Sampson       <c...@starling-software.com>        +81 90 7737 2974
          Functional programming in all senses of the word:
                  http://www.starling-software.com

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to