Valid Haskell Code
Name:
Anonymous
2012-01-14 23:10
http://tuukka.iki.fi/tmp/haskell-2009-04-23.html
(,) <$> [1..5] <*> [11..15]
[(1,11),(1,12),(1,13),(1,14),(1,15),(2,11),(2,12),(2,13),(2,14),(2,15),(3,1...
const ((((((const . (const .)) .) .) .) .) . flip flip id . ((ap . (flip .) . ((flip .) .)) .) . ((((flip .) .) .) .) . (((((flip .) .) .) .) .) . join . (flip .) . ((flip .) .) . (((flip .) .) .) . ((((flip .) .) .) .) . (((((flip .) .) .) .) .) . flip flip id . (flip .) . ((ap .) .) . (((flip .) .) .) . ((((flip .) .) .) .) . (((((flip .) .) .) .) .) . ((((flip .) .) .) .) . (flip .) . ((flip .) .) . (((flip .) .) .) . flip (flip . (flip .) . ((flip .) .) . flip (flip . (flip .))))
Name:
Anonymous
2012-01-14 23:14
Lisp | Haskell
-----------------|--------------------------------------------------------------
Prefix notation. | (,) <$> [1..5] <*> [11..15]
| flip flip snd . (ap .) . flip flip fst . ((.) .) . flip .
| (((.) . (,)) .) (`ap` snd) . (. fst) . (flip =<< (((.) .
| (,)) .)) (`ap` snd) . (. fst) . flip
Name:
Anonymous
2012-01-14 23:16
I don't see the problem with the first.
Name:
Anonymous
2012-01-14 23:25
Name:
Anonymous
2012-01-14 23:41
all i see are tits ( . )( . )
Name:
Anonymous
2012-01-14 23:43
>>5
That's ass. You're gay.
Name:
Anonymous
2012-01-14 23:49
7/10
Name:
Anonymous
2012-01-15 5:17
>>4
Learn you're Applicative.
Name:
Anonymous
2012-01-15 7:12
>>8
I'm Applicative?
fmap fmap fmap $ (.).(.)!
Name:
Anonymous
2012-01-15 9:20
% pointfree 'const ((((((const . (const .)) .) .) .) .) . flip flip id . ((ap . (flip .) . ((flip .) .)) .) . ((((flip .) .) .) .) . (((((flip .) .) .) .) .) . join . (flip .) . ((flip .) .) . (((flip .) .) .) . ((((flip .) .) .) .) . (((((flip .) .) .) .) .) . flip flip id . (flip .) . ((ap .) .) . (((flip .) .) .) . ((((flip .) .) .) .) . (((((flip .) .) .) .) .) . ((((flip .) .) .) .) . (flip .) . ((flip .) .) . (((flip .) .) .) . flip (flip . (flip .) . ((flip .) .) . flip (flip . (flip .))))'
const ((((((const . (const .)) .) .) .) .) . flip flip id . (liftM2 (flip . ((flip . ((flip . (flip .)) .)) .)) .) . join . ((flip . ((flip . ((flip . ((flip . (flip .)) .)) .)) .)) .) . flip flip id . ((flip . (liftM2 (flip . ((flip . (flip .) . flip) .)) .) . flip . ((flip . (flip .)) .)) .) . flip (flip . ((flip . (flip .)) .) . flip (flip . (flip .))))
Much clearer.
Name:
Anonymous
2012-01-16 1:15
Haskell is not 'a little different,' and will not 'take a little time.' It is very different and you cannot simply pick it up.
Name:
Anonymous
2012-01-16 1:17
"learning Haskell hurt a lot, at least for me. I needed breaks, and my brain hurt while I was trying to understand." -- Haskell Tutorial
Name:
Anonymous
2012-01-16 1:46
>>1
What, nobody checked?
<interactive>:1:479:
Occurs check: cannot construct the infinite type:
c1 = a0 -> a2 -> a4 -> (a3 -> a5 -> a1 -> c1) -> a1 -> a2 -> c0
Expected type: (a5 -> a1 -> c1)
-> a1
-> a5
-> a0
-> a2
-> a4
-> (a3 -> a5 -> a1 -> c1)
-> a1
-> a2
-> c0
Actual type: (a5 -> a1 -> c1) -> a1 -> a5 -> c1
In the first argument of `(.)', namely `flip'
In the second argument of `(.)', namely `(flip .)'
Name:
Anonymous
2012-01-16 17:54
>>13
well, at least it's better than a C++ template error