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
Programming and Programming Languagesby Shriram Krishnamurthi - Brown University
Many people would regard this as being two books in one. One book is an introduction to programming, teaching you basic concepts of organizing data and the programs that operate over them. The other book is an introduction to programming languages.
(9973 views)
Let Over Lambda: 50 Years of Lispby Doug Hoyte - Lulu.com
One of the most hardcore computer programming books out there. Starting with the fundamentals, it describes the most advanced features of the most advanced language: Common Lisp. This book is about macros, that is programs that write programs.
(24925 views)
Comparative Studies of Programming Languagesby 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.
(11899 views)
Programming Languages: Theory and Practiceby Robert Harper - Carnegie Mellon University
What follows is a working draft of a planned book that seeks to strike a careful balance between developing the theoretical foundations of programming languages and explaining the pragmatic issues involved in their design and implementation.
(13544 views)