[Haskell-cafe] Re: statep haskell-lang [was: Re: Hoogle and Network.Socket]

Jonathan Cast jonathanccast at fastmail.fm
Thu Feb 26 17:42:02 EST 2009


On Thu, 2009-02-26 at 15:23 -0700, John A. De Goes wrote:
> On Feb 26, 2009, at 1:36 PM, Jonathan Cast wrote:
> > On Thu, 2009-02-26 at 13:25 -0700, John A. De Goes wrote:
> >> No, I hate C and will never use it again in my entire life unless
> >> forced to at the point of a gun.
> >
> > Why?  Its libraries are far better, its editors are far better [1],  
> > its
> > compilers are far better, its tool support is far better, it's
> > incomparably superior in every possible way to Haskell.
> 
> There are better languages than C with more libraries and better tools  
> (e.g. Java). I would chose one of those over Haskell for a commercial  
> product needing short time-to-market and a long shelf life.

OK, great.  But still: if you want Java, you know where to find it.

> Even  
> though Haskell is a superior language, there are other, often more  
> important considerations for anything but hobby coding.
> 
> > Except the relatively narrow criterion of the *language itself*.   
> > Maybe
> > making languages better is a worthwile pursuit, then?  Or do you still
> > think languages should be frozen in time[2] so the tools, compilers,
> > editors, libraries, etc. can undergo vast improvements?
> 
> I think to reap the benefits of a language, it must necessarily stop  
> evolving in ways that impose high costs on its user base.
> 
> > [2] For the record: I'd be content to see a frozen production  
> > language,
> > like Haskell, frozen in time; as long there's a credible other
> > evolveable language --- preferably one with zero backward- 
> > compatibility
> > requirements w.r.t. Haskell 98 or current or past GHC.
> 
> Let me ask you this question: If I wanted a language like Haskell, but  
> which is "Enterprise ready", where should I turn?

My *optimal* solution (not one I actually expect): Haskell forks.  One
frok retains backwards-compatibility, but gives up type families and any
new language developments.  If that language evolves, I can *guarantee*
you I will dislike any changes it makes (see Java generics for an
example; see the entirety of C++ for another).

The other fork continues to impose `high costs' on its user base, in the
name of being the best language it can possibly be.  This will
eventually involve just discarding features of Haskell 98 that get in
the way.

> My answer: Haskell. It's maturing and its slowed rate of evolution is  
> already having beneficial effects on other dimensions.

Beneficial as per you.  Not everyone agrees/cares --- not everyone is
doing Enterprise programming!

> >  Re-designing a
> > purely function research language from the ground up would be neat ---
> > but then it wouldn't be Haskell at all, and I wouldn't use Haskell,  
> > I'd
> > use the new language.  If I thought I could realistically leave the
> > Haskell community, I wouldn't be nearly so opposed to Haskell's
> > continued slide into practicality.
> 
> Why do you think you'll have no where else to go if Haskell continues  
> moving away from being a research language?

I have nowhere to go as yet.  (I am actually writing my own language;
when I get something usable for real work, I may very well just plain
un-subscribe from haskell-cafe, even though I will continue using
Haskell for bootstrapping for some time after that.)

> There are plenty of people  
> who would join you. I think you'd have far more company than you seem  
> to believe.

Yeah, I'd have the company of everyone who argues against you in this
(quite on-going) debate.  At least in spirit (how long it will take for
a new common research language to emerge from the mist is another
matter).

> And a fresh start, with absolutely zero requirements for  
> any backward compatibility, would open up many new directions.

I agree with that.  Although you're trying to argue those directions are
less valuable than I think they are!

In any case, I'm going to *try* not to continue this discussion any
further.  Best case nothing beneficial comes of it; worst case
participating in it slows down Global Script development.

jcc




More information about the Haskell-Cafe mailing list