Re: [Haskell-cafe] Proposal: Applicative = Monad: Call for consensus

2011-01-25 Thread Maciej Piechotka
On Mon, 2011-01-24 at 20:13 -0800, Ryan Ingram wrote: On Fri, Jan 21, 2011 at 7:58 PM, Casey Hawthorne cas...@istar.ca wrote: uj supplied this: About the discussion putStrLn (readLn + (5 :: Int)).. I'll write it as the following line, importing Control.Applicative main = (+)

Re: [Haskell-cafe] Proposal: Applicative = Monad: Call for consensus

2011-01-25 Thread Ketil Malde
Erik Hesselink hessel...@gmail.com writes: importing Control.Applicative main = print = liftM2 (+) readLn (return 3) [...] line noise Why not just: main = print . (+3) = readLn Or using applicative: print = (+3) $ readLn ? (Which separates the printing from the addition.) -k -- If

Re: [Haskell-cafe] Proposal: Applicative = Monad: Call for consensus

2011-01-25 Thread Gábor Lehel
On Tue, Jan 25, 2011 at 10:20 AM, Ketil Malde ke...@malde.org wrote: Erik Hesselink hessel...@gmail.com writes: importing Control.Applicative main = print = liftM2 (+) readLn (return 3) [...] line noise Why not just: main = print . (+3) = readLn Or using applicative:  print = (+3) $

Re: [Haskell-cafe] Proposal: Applicative = Monad: Call for consensus

2011-01-25 Thread Maciej Piechotka
On Tue, 2011-01-25 at 12:17 +0100, Gábor Lehel wrote: On Tue, Jan 25, 2011 at 10:20 AM, Ketil Malde ke...@malde.org wrote: Erik Hesselink hessel...@gmail.com writes: importing Control.Applicative main = print = liftM2 (+) readLn (return 3) [...] line noise Why not just: main =

Re: [Haskell-cafe] Proposal: Applicative = Monad: Call for consensus

2011-01-24 Thread Ryan Ingram
On Fri, Jan 21, 2011 at 7:58 PM, Casey Hawthorne cas...@istar.ca wrote: uj supplied this: About the discussion putStrLn (readLn + (5 :: Int)).. I'll write it as the following line, importing Control.Applicative main = (+) readLn (return 3) They look almost exactly same in my eyes..

Re: [Haskell-cafe] Proposal: Applicative = Monad: Call for consensus

2011-01-24 Thread Erik Hesselink
On Tue, Jan 25, 2011 at 05:13, Ryan Ingram ryani.s...@gmail.com wrote: On Fri, Jan 21, 2011 at 7:58 PM, Casey Hawthorne cas...@istar.ca wrote: uj supplied this: About the discussion putStrLn (readLn + (5 :: Int)).. I'll write it as the following line, importing Control.Applicative main =

Re: [Haskell-cafe] Proposal: Applicative = Monad: Call for consensus

2011-01-23 Thread Tyson Whitehead
On January 21, 2011 14:01:36 Ryan Ingram wrote: Interesting little paper, Tyson. Hi Ryan, Thanks for comments and kind words. I think what a programmer actually wants from ambiguity resolution is something *predictable*; C++'s system is definitely stretching the boundaries of

Re: [Haskell-cafe] Proposal: Applicative = Monad: Call for consensus

2011-01-21 Thread Tyson Whitehead
On January 19, 2011 15:28:33 Conor McBride wrote: In each case, the former has (++) acting on lists of strings as pure values, while the latter has (++) acting on strings as values given in []-computations. The type [String] determines a domain, it does not decompose uniquely to a notion

Re: [Haskell-cafe] Proposal: Applicative = Monad: Call for consensus

2011-01-21 Thread Ryan Ingram
Interesting little paper, Tyson. You bring up other programming languages and 'ad-hoc systems for resolving ambiguities'; I agree with you that these systems generally have no strong theoretical basis, but I'm not sure that's a terribly bad thing. I think what a programmer actually wants from

Re: [Haskell-cafe] Proposal: Applicative = Monad: Call for consensus

2011-01-21 Thread Casey Hawthorne
uj supplied this: About the discussion putStrLn (readLn + (5 :: Int)).. I'll write it as the following line, importing Control.Applicative main = (+) readLn (return 3) They look almost exactly same in my eyes.. On Fri, 21 Jan 2011 11:01:36 -0800, you wrote: Interesting little paper,

Re: [Haskell-cafe] Proposal: Applicative = Monad: Call for consensus

2011-01-19 Thread Conor McBride
Hi Tyson (So OT, I'm switching to cafe.) On 19 Jan 2011, at 18:24, Tyson Whitehead wrote: On January 17, 2011 16:20:22 Conor McBride wrote: Ahem : ) The unfortunate pain you pay for this additional power is manually having to specify the application ($ and *) and merging (join). If the