[Haskell-beginners] lambda notation vs function-argument notation in GHCi

Ozgur Akgun ozgurakgun at gmail.com
Sun Jun 17 12:28:26 CEST 2012


http://www.haskell.org/haskellwiki/Monomorphism_restriction

On 17 June 2012 08:13, Morel Pisum <morel.pisum at googlemail.com> wrote:

> Let's define a function in GHCi:
>
> > Prelude> let f s n = and (map (==s) n)
> > Prelude> :t f
> > f :: Eq a => a -> [a] -> Bool
>
> This is fine. But when I define this function using lambda notation, I
> get this
>
> > Prelude> let f = \s n -> and (map (==s) n)
> > Prelude> :t f
> > f :: () -> [()] -> Bool
>
> which is really weird.
>
> Why does this happen?
>
> _______________________________________________
> Beginners mailing list
> Beginners at haskell.org
> http://www.haskell.org/mailman/listinfo/beginners
>



-- 
Ozgur Akgun
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/beginners/attachments/20120617/ec5d2b65/attachment.htm>


More information about the Beginners mailing list