
apfelmus@quantentunnel.de wrote:
Perhaps it's best if I improve the explanation and we return to the discussion afterwards?
Ok, I've managed to expand the explanations and to add several images.
And don't worry, there is enough material for the "Algebra of Data Types" to explode :) (sums and products, (polynomial) functors, F-algebras, coalgebras, universal properties, fixed points (inductive and coinductive), etc.)
Tasty :) Something I know little about, but sounds great. Any papers for background reading?
Personally, I read
http://www.cs.chalmers.se/~patrikj/poly/afp98/
but it's huge and I actually skipped most of it. The most interesting point was the meaning of "F-Algebra". Otherwise you may skim through
http://haskell.org/haskellwiki/Research_papers/Generics
but there is indeed a need for a good tutorial.
I think that "Fold and Unfold for Program Semantics" by Graham Hutton may be helpful, too. While it does not really explain that functors can be see as signatures for algebras (monoids, natural numbers, etc.), it puts their folds and unfolds to good use. Regards, apfelmus