 It is important in this context, because it can be built from a single type constructor, the arrow type.Currying then endows the language with a natural product type.The correspondence between objects in categories and types then allows programming languages to be re-interpreted as logics (via Curry–Howard correspondence), and as other types of mathematical systems, as explored further, below.