The monomorphism restriction and monomorphic pattern bindings

Ian Lynagh igloo at earth.li
Wed Apr 30 07:40:50 EDT 2008


On Wed, Apr 30, 2008 at 12:18:47PM +0100, Ross Paterson wrote:
> On Wed, Apr 23, 2008 at 10:32:24AM -0700, Simon Marlow wrote:
> > The current proposal on the table for what to do about the monomorphism  
> > restriction (henceforth MR) is
> >
> >   * remove the MR entirely
> 
> Just to be clear, are we talking only about Rule 1 of the MR?
> 
> Rule 2 seems unavoidable, but it should probably say "entire group of
> mutually recursive modules" rather than "entire module".

    Rule 2

    Any monomorphic type variables that remain when type inference for
    an entire module is complete, are considered ambiguous, and are
    resolved to particular types using the defaulting rules.

Sounds right to me.

Although personally I think defaulting should be removed from the
language (but left in the interactive environments), but that's another
debate!


Thanks
Ian



More information about the Haskell-prime mailing list