On 2008 Dec 6, at 18:13, Simon Michael wrote:
I don't yet know what a hylomorphism is and thought your pointless- haskell package might be one of those semi-joke projects, but now I wonder if it's something that I'll need in order to use (G)Hood with real-world code.


Not a joke.

People who reason about programs (more of a mathematical discipline than a programming one) like to use the tools of category theory (a generalization of set theory). At the category-theoretical level, the important parts of Haskell are functors (functions that operate on functions; they perform transformations on types) and types (equivalent to sets); values don't actually appear anywhere, they stay hidden inside types. So to use those tools, you need to remove the values; values are also known as "points", hence "point-free" or "point-less" (a bit of a joke, that) programming.

Morphisms (catamorphism, hylomorphism, etc.) are category-theoretical transformations, which are represented in Haskell as functors. Many common functional "patterns" are derived from these reflections of category theory transformations in the language.

--
brandon s. allbery [solaris,freebsd,perl,pugs,haskell] [EMAIL PROTECTED]
system administrator [openafs,heimdal,too many hats] [EMAIL PROTECTED]
electrical and computer engineering, carnegie mellon university    KF8NH


_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to