**Categories, Types, and Structures**

by Andrea Asperti, Giuseppe Longo

**Publisher**: MIT Press 1991**ISBN/ASIN**: 0262011255**ISBN-13**: 9780262011259**Number of pages**: 300

**Description**:

The main methodological connection between programming language theory and category theory is the fact that both theories are essentially "theories of functions." A crucial point, though, is that the categorical notion of morphism generalizes the set-theoretical description of function in a very broad sense, which provides a unified understanding of various aspects of the theory of programs. This book is mostly inspired by this specific methodological connection and its applications to the theory of programming languages. More precisely, as expressed by the subtitle, it aims at a self-contained introduction to general category theory (part I) and at a categorical understanding of the mathematical structures that constituted the theoretical background of relevant areas of language design (part II). The impact on functional programming, for example, of the mathematical tools described in part II, is well known, as it ranges from the early dialects of Lisp, to Edinburgh ML, to the current work in polymorphisms and modularity. Other applications, such as CAML, which will be described, use categorical formalization for the purposes of implementation.

Download or read it online for free here:

**Download link**

(PDF)

## Similar books

**Practical Foundations for Programming Languages**

by

**Robert Harper**

This is a book on the foundations of programming languages. The emphasis is on the concept of type, which organizes the computational universe in the same way that the concept of set may be seen as an organizing principle for mathematics.

(

**12450**views)

**Semantics: Advances in Theories and Mathematical Models**

by

**Muhammad Tanvir Afzal (ed.)**-

**InTech**

The book is a blend of a number of great ideas, theories, mathematical models, and practical systems in the domain of Semantics. Topics include: Background; Queries, Predicates, and Semantic Cache; Algorithms and Logic Programming; etc.

(

**5629**views)

**Comparative Studies of Programming Languages**

by

**Joey Paquet, Serguei A. Mokhov**-

**arXiv**

Lecture notes for the Comparative Studies of Programming Languages course. These notes include a compiled book of primarily related articles from the Wikipedia, as well as Comparative Programming Languages book and other resources.

(

**6120**views)

**Type Systems for Programming Languages**

by

**Robert Harper**

Provides an account of the role of type theory in programming language design and implementation. The stress is on the use of types as a tool for analyzing programming language features and studying their implementation.

(

**12409**views)