
10 Feb
2008
10 Feb
'08
8:42 a.m.
2008/2/10, Michael Feathers
On a lark, I loaded this into Hugs this morning, and it didn't complain:
data Thing = Thing (Integer -> Integer)
But, I've never seen that sort of construct in an example. Do people ever embed functions in ADTs?
Yes, anyway you can embed function in Maybe a or Either a b for example, since they're polymorphic. Embedding functions in ADT purposefully happens quite often too, just look at the State Monad, the functionnal references proposal and so on... Recently I embedded functions into a denotational semantic ADT for a tiny DSL, there's plenty of use cases. -- Jedaï