Open Source+

Leon Smith lps@po.cwru.edu
Wed, 27 Jan 1999 21:01:16 -0500


		I am on this list almost by accident, but I have been too lazy to sign
myself off.  However, the discussion has been intriguing, and I have a few
pseudo-random comments...

1.  Although I am outside the clean community (I am a fan of Haskell), I am
all for open source clean.  I think it would be a great idea.

2.  ML-style FP doesn't appeal to the hacks.  Chances are, if they have
heard of ML/Haskell/Clean, they don't know anything about it.  If they know
anything about it and they don't hate it, it doesn't excite them.

3.  Open source has had a great deal of success besides linux.  Look at
FreeBSD, emacs, gcc, xfree86.  They may not always be the prettiest of
systems, but they work well.

4.  Hugs is a breeze to install.  RPMs are now available for GHC.

5.  I haven't done extensive benchmarking, but it seems to me that Clean
isn't that much "faster" than other functional programming languages like
scheme or haskell.  I highly doubt that Clean is coming within a factor of
four over good imperative languages for most applications.

6.  I like monads.  I haven't used uniqueness typing a lot, but I like the
idea.  Is there some reason that a language cannot have both?

7.  I am suprised how many people that don't know the difference between
language, implementation, and IDE.  Heck, in Perl the implementation and
language are same thing!


Why do I use Haskell and not Clean?  

Haskell is the bazaar. It was designed to act as a substrate for FP
research, not necessarily to be the most practical FP language.  People
have written all kinds of modifications so they could play with language
features.  Admittedly, these are not always overly useful, but they are
fun.  I believe it to be the precursor of a better FP language.  

One of the biggest reasons is that I am lazy, I don't know Clean very well.
 It seems to be a bit better than Haskell from my examination, but not
incredibly so.  At least I have examined Clean.  Most C++ programmers of
the world have no idea of what they are lacking over say, Modula-3 or
Eiffel.  

However M3 and Eiffel are the end product of nearly 40 years of research
into Algol-style imperative programming. I think they are near the end of
this road, and represent the best choices for production code today.
However, ML-style FP is nowhere near finished.  When I am programming in
Haskell, I want to be able to mess around more than if I am writing in M3.  

But until ML-style FP is hammered out, I want to play.

best,
leon