[Haskell-cafe] Re: Libraries for Commercial Users

John A. De Goes john at n-brain.net
Sun Oct 11 12:58:57 EDT 2009

On Oct 9, 2009, at 10:37 PM, Curt Sampson wrote:

> So this makes me wonder, if cross-platform support is so necessary,
> why have these PHP, Ruby and Python folks not switched to Java, rather
> than remain suffering doing their development on Linux boxes?

PHP runs on all platforms (it's common for developers to test locally  
on Windows/Mac, and deploy to a Linux server), and has such an  
extensive library that most other libraries a developer might need are  
likely to be pure PHP, built on top the base. So while not "cross  
platform" in the sense that Java is, the approach taken by PHP  
achieves much of the benefit.[1]

Moreover, PHP is a perfect example of the principle that libraries are  
essential to language success. PHP's standard library is so immense,  
it includes just about everything the average web developer needs. And  
many functions it provides are very high-level -- for example,  
file_get_contents() works seamlessly across local files, http files,  
https files, etc.

PHP never would have achieved the success it has if it weren't for the  
immense library available for it (of course, it's not the sole factor  
in its success).

> And if libraries are the issue, why would not just creating a SWIG for
> GHC make all of these people move to Haskell?

Making it possible and making it easy are two different things. It's  
already _possible_ to do Haskell interop with any other language, it's  
just difficult and cumbersome.

Moreover, Haskell will never attract the following of a mainstream  
language like PHP. But there are numerous applications where Haskell  
is clearly a superior choice assuming library equality.

> I agree it's a nich market, too. So I guess our point of  
> disagreement is
> that you believe that it's lack of libraries keeping it a nich market,

Haskell will never be "popular", because it's too hard for the masses.  
But I could see big companies like Yahoo, Facebook, Google, etc.,  
using Haskell extensively to develop web infrastructure -- _if_ there  
were no longer a significant penalty to doing so. Right now the  
barrier of entry is too high, because too much infrastructure would  
have to be developed from scratch, and then maintained at cost.

> That just seems pointless to me, because those looking for real
> improvements can't use that sort of stuff. When I need RDBMS access,
> libraries like Hibernate and Active Record are useless to me, because
> they force me to work in a stupid manner. For web sites, Rails is
> useless because again, it deals with stuff in a stupid, unproductive
> way.

Well, I don't know much about Rails, but I do know some Rails  
developers can build a fully-functional, database-backed Web 2.0 site  
in a matter of hours.[2] That level of productivity is not available  
in Haskell yet.

Put another way, it would cost me far more to hire you to develop a  
Haskell site than a good Rails developer,[3] and what a Rails  
developer produces can be deployed at numerous Rails hosting sites at  
no upfront cost to me. So why should I hire you?

[1] The Haskell Platform could eventually take Haskell in a similar  
direction, it it provides a broad enough base that developers can  
built nearly any other library directly on top of it.
[2] http://www.readwriteweb.com/archives/rails_rumble_92_web_apps_created_in_48_hours.php
[3] The difference in cost is strictly due to libraries. If you had  
some killer Haskell libraries at your disposal, I have no doubt you  
could do it for less than a Rails developer.


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

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

More information about the Haskell-Cafe mailing list