Difference between revisions of "Category theory"

From HaskellWiki
Jump to navigation Jump to search
(→‎Foundations: : two links how category theory concepts are present in Haskell programming)
Line 1: Line 1:
  +
'''Category theory''' can be helpful in understanding Haskell's type system. There is a "Haskell category", of which the objects are Haskell types and the morphisms from types <hask>a</hask> to <hask>b</hask> are Haskell functions of type <hask>a -> b</hask>. Various other Haskell structures can be used make it a Cartesian closed category.
  +
 
__TOC__
 
__TOC__
   

Revision as of 20:32, 11 June 2006

Category theory can be helpful in understanding Haskell's type system. There is a "Haskell category", of which the objects are Haskell types and the morphisms from types a to b are Haskell functions of type a -> b. Various other Haskell structures can be used make it a Cartesian closed category.

Foundations

Michael Barr and Charles Wells: Toposes, Triples and Theories. The online free available book is both an introductory and a detailed description of category theory. By the way, it is also a category theoretical descripton of the concept of monad (the book uses another name instead of monad: triple).

HaWiki's CategoryTheory is also a good theoretical introduction, and besides that, it explains how concepts of category theory are important in Haskell programming.

A Gentle Introduction to Category Theory - the calculational approach written by Maarten M Fokkinga.

Categorical programming

Catamorphisms and related concepts, categorical approach to functional programming, categorical programming. Many materials cited here refer to category theory, so as an introduction to this discipline see the #Foundations section.