[Haskell-cafe] A Mascot

Ben Franksen ben.franksen at online.de
Mon Nov 21 23:25:28 CET 2011

heathmatlock wrote:
> Cute! I like it!

Yea, it's cute. I don't like the formula, though: \x -> x + x is just too 
trivial and not very Haskellish. Something higher order is the minimum 
requirement, IMO. The original (lambda knights) formula was cool: the fixed 
point operator is directly related to recursion, which is reflected in the 
picture that contains itself; note also that defining this operator requires 
an untyped language, so this fits LISP quite well (but not Haskell).

What about the formula for function composition

  (f . g) x = f (g x)

maybe together with its type (or maybe only the type)

  (.) :: (b -> c) -> (a -> b) -> a -> c

Extremely cool are GADTs, such as

  data Eq a b where Refl :: Eq a a

Or, if you'd like something more obscure but still at the center of what 
Haskell is about, take the mother of all monads

  m >>= f = \k -> m (\a -> (f a) k)

This is a formula I can spend a day contemplating and still wonder if I have 
_really_ understood it. And doesn't that properly reflect the depth and 
richness of Haskell?


> On Mon, Nov 21, 2011 at 7:52 AM, Karol Samborski
> <edv.karol at gmail.com>wrote:
>> 2011/11/21 Karol Samborski <edv.karol at gmail.com>:
>> > Hi all,
>> >
>> > This is my sister's proposition:
>> > http://origami.bieszczady.pl/images/The_Lamb_Da.png
>> >
>> > What do you think?
>> >
>> Second version: http://origami.bieszczady.pl/images/The_Lamb_Da2.png
>> Best,
>> Karol Samborski
>> _______________________________________________
>> Haskell-Cafe mailing list
>> Haskell-Cafe at haskell.org
>> http://www.haskell.org/mailman/listinfo/haskell-cafe

More information about the Haskell-Cafe mailing list