defaults
Ross Paterson
ross at soi.city.ac.uk
Wed Nov 29 13:47:07 EST 2006
On Wed, Nov 29, 2006 at 06:08:14PM +0000, Malcolm Wallace wrote:
> Unfortunately, I suspect that teaching is _the_ major use-case for
> defaulting. Imagine, day one, lesson one, a student types
>
> Prelude> 1+2
>
> into Hugs, and gets the response
>
> Unresolved overloading: Num a
>
> Huh? This is lesson one, and you already need to tell students about
> type classes and overloading, before you have even covered simple
> expressions fully? I am certain this is the reason why defaulting was
> introduced.
Following a suggestion of Ralf Hinze, GHCi and Hugs already perform more
defaulting on interpreted expressions than on definitions in modules
(where they follow Haskell 98). Thus "reverse []" just works, instead
of provoking
ERROR: Cannot find "show" function for:
*** expression : reverse []
*** of type : [a]
See http://www.haskell.org/ghc/docs/latest/html/users_guide/ch03s04.html#extended-default-rules
So if defaulting were removed from the language it could still be done
at the interpreter prompt.
More information about the Haskell-prime
mailing list