[fschwidom@localhost: Re: [Haskell-beginners] ($) operator]

Frank Schwidom schwidom at gmx.net
Sat Jan 24 17:14:02 EST 2009


----- Forwarded message from Frank Schwidom <fschwidom at localhost> -----

Date: Sat, 24 Jan 2009 21:40:54 +0000
From: Frank Schwidom <fschwidom at localhost>
To: John Hartnup <john.hartnup at gmail.com>
Subject: Re: [Haskell-beginners] ($) operator
Message-ID: <20090124214053.GA4496 at BigBox>
References: <6c1ba2fc0901241137x242cf4b4w2398896af45ae694 at mail.gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <6c1ba2fc0901241137x242cf4b4w2398896af45ae694 at mail.gmail.com>
User-Agent: Mutt/1.5.16 (2007-06-09)
Status: RO

On Sat, Jan 24, 2009 at 07:37:29PM +0000, John Hartnup wrote:
> Hi.
> 
> I'm working through Real World Haskell, and although it's going well
> (I just finished the exercise to write a glob matcher without using a
> regex library, and I'm pleased as punch), I keep seeing the ($)
> operator, and I'm not sure I understand its use. If the book explains
> it, I've been unable to find it.
> 
> Empirically, it seems like:
> a $ b c d e f
> .. is equivalent to ..
> a (b c d e f)
> 
> But is that it's only purpose? To placate the LISP haters by removing
> parentheses?
> 
> (1 +) 2  does the same thing as (1 +) $ 2, and has the same type.
> 
> Am I missing something?
> 
> Thanks,
> John
> 
> 
> -- 
> "There is no way to peace; peace is the way"
> _______________________________________________
> Beginners mailing list
> Beginners at haskell.org
> http://www.haskell.org/mailman/listinfo/beginners

maybe can this answer your question:

A:
((==) True) (1 == 1) -- won't work: ((==) True) 1 == 1

=>

((==) True) ((==) 1 1) -- won't work: ((==) True) (==) 1 1

=> 

((==) True) $ (==) 1 1 

=> 

((==) True) $ 1 == 1 


Regards


----- End forwarded message -----


More information about the Beginners mailing list