On Mon, 27 Sep 1999, George Russell wrote:

> Kevin Atkinson wrote:
> [snip]
> > 1) Support for true ad-hoc overloading.
> [snip] 
> > 2) Support for TRUE OO style programming.
> [snip]
> > 4) Being able to write
> >   do a <- getLine
> >      b <- getLine
> >      proc a b
> > as
> >   proc getLine getLine
> [snip]
> AAARRRGGH no.  I don't like overloading.  For one thing it makes it a bore
> working out what any given function call means.  Haskell takes it about as
> far as it goes, but I don't want to go any further.  For example, I would much
> prefer to maintain
>   do a <- getLine
>      b <- getLine
>      proc a b
> since all the action is clearly written out.  I don't have to know that
> getLine is an IO something and deduce automatic coercion.
> 
> If anything we should be trying to simplify Haskell's type system, not
> complicate it.  I would welcome a better way of doing multi-parameter
> type classes, but that seems to be something of a research problem
> right now.

Perhapes an implicit coercion is going two far. But i would DEFENTLY
like to say something like.

lift proc getLine getLine
lift proc "A line." getLine
lift proc "A line." "Another line."

The lift in this case makes it clear what is going on.   With current
haskell I would have had to use a seperate lift function for each case.

---
Kevin Atkinson
[EMAIL PROTECTED]
http://metalab.unc.edu/kevina/




Reply via email to