Hi Mike,
Let's redirect to Haskell cafe.
http://www.mail-archive.com/glasgow-haskell-users%40haskell.org/msg06288.html
http://www.mail-archive.com/glasgow-haskell-users%40haskell.org/msg06289.html
thanks for your time to look into the HList paper.
1. It looks like your HList is basically a
I am pretty sure, that = is to monads what * is to
for example natural numbers, but I don't know what the
inverse of = is. And I can't really find it anywhere
on the web(papers, websites, not a single sole does
mention it.
It should have type, at least that's what I think:
inv::M a-M b
I say
hi ron,
here are the relations between the two formulations of monads:
(using haskell notation)
map f m = m = (return . f)
join m = m = id
m = f = join (fmap f m)
there are quite a few general concepts that you need
to understand in what sense monads are monoids, but
to
Hi.
Another way is to take advantage of Haskell's laziness:
class Foo a where
foo :: a - Int
data Oof1 = Oof1 Int
instance Foo Oof1 where foo (Oof1 i) = i
data Oof2 = Oof2 Int
instance Foo Oof2 where foo (Oof2 i) = i
list1 = [foo (Oof1 10), foo (Oof2 20)]
That's all it takes. The applications