[Haskell-beginners] map question
Joost Kremers
joostkremers at fastmail.fm
Thu Sep 17 08:01:47 EDT 2009
On Thu, Sep 17, 2009 at 01:50:27PM +0200, Daniel Fischer wrote:
> > Prelude> map ((-) 1) [1,2,3,4]
> > [0,-1,-2,-3]
> >
> > I know I can use an anonymous function, but I'm just trying to understand
> > the result here... I'd appreciate any hints to help me graps this.
>
> (-) a b = a - b, so (((-) 1) x) = 1 - x and you've mapped (\x -> 1-x) over the list.
Ah yes... Of course, I didn't realise that wrapping a binary operator in parens
turns it into a normal function.
And from <http://www.haskell.org/onlinereport/exps.html#sect3.5>, which someone
pointed me to off-list, I gather that in (- 1) the minus sign is interpreted as
the unary operator, not the binary one. Which means that (- 1) is not a
function, which means map will barf.
Ok, thanks, all makes sense now!
Joost
--
Joost Kremers
Life has its moments
More information about the Beginners
mailing list