Terms
Revision as of 23:16, 21 March 2011 by Henk-Jan van Tuyl (talk | contribs) (Added a link to Category:Glossary, added some explanations)
This article is a stub. You can help by expanding it.
See also Category:Glossary and Abbreviations
Adjoint functors | See the Wikipedia article |
Anamorphism | An unfold |
Bottom | Undefined value |
Catamorphism | Fold; any for-each loop can be represented as a catamorphism |
Finally tagless | ??? |
Forgetful functor | Given some object with structure as input, some or all of the object's structure or properties is 'forgotten' in the output |
Hylomorphism | Combination of fold and unfold; every for-loop (without early exits) can be represented as a hylomorphism |
Left adjoint | See the Wikipedia article on adjoint functors |
Oleg rating | A measure of ability to do type system trickery, named after Oleg Kiselyov :) |
Right adjoint | See the Wikipedia article on adjoint functors |
Tail recursion | A recursive function is tail recursive if the final result of the recursive call is the final result of the function itself. |
Tying the knot | Building a cyclic data structure |
Unlifted types | Types that do not have bottom as an inhabitant |
Unpointed types | Types that do not have bottom as an inhabitant |