Well my fault, the example should have been like this:
We have and error of infinite type for
Prelude> :t ((\(h:t) -> h t) [head, last, head, last, head, last])
Of course, head and tail are incompatible on type level...
Dušan
On Fri, 07 Mar 2014 07:57:09 +0100, Kolář Dušan <kolar@fit.vutbr.cz> wrote:
:
:
But we have an error of infinite type construction for
Prelude> :t ((\(h:t) -> h t) [head,tail, head, tail, head, tail])
Well I can overcome this by encoding functions into data types and then performing "conversion" back and forth, nevertheless, is there any way how to overcome this?
It seems like you need heterogenous collections[0]
Regards,
Henk-Jan van Tuyl
[0] http://www.haskell.org/haskellwiki/Heterogenous_collections
--
Folding@home
What if you could share your unused computer power to help find a cure? In just 5 minutes you can join the world's biggest networked computer and get us closer sooner. Watch the video.
http://folding.stanford.edu/
http://Van.Tuyl.eu/
http://members.chello.nl/hjgtuyl/tourdemonad.html
Haskell programming
--
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe