Rating: ****
Tags: Computer Science, Programming Languages, Lang:en
Added: October 24, 2020
Modified: November 5, 2021
Summary
An introduction to dependent types, demonstrating the
most beautiful aspects, one step at a time. A
program's type describes its behavior. Dependent types are a
first-class part of a language, and are much more powerful
than other kinds of types; using just one language for types
and programs allows program descriptions to be as powerful as
the programs they describe.
The Little Typer explains dependent types, beginning
with a very small language that looks very much like Scheme
and extending it to cover both programming with dependent
types and using dependent types for mathematical reasoning.
Readers should be familiar with the basics of a Lisp-like
programming language, as presented in the first four chapters
of
The Little Schemer. The first five chapters of
The Little Typer provide the needed tools to
understand dependent types; the remaining chapters use these
tools to build a bridge between mathematics and programming.
Readers will learn that tools they know from
programming—pairs, lists, functions, and
recursion—can also capture patterns of reasoning.
The Little Typer does not attempt to teach either
practical programming skills or a fully rigorous approach to
types. Instead, it demonstrates the most beautiful aspects as
simply as possible, one step at a time. **