**Elements of Programming**

by Alexander Stepanov, Paul McJones

**Publisher**: Semigroup Press 2019**ISBN-13**: 9780578222141**Number of pages**: 279

**Description**:

This book applies the deductive method to programming by affiliating programs with the abstract mathematical theories that enable them to work. Specification of these theories, algorithms written in terms of these theories, and theorems and lemmas describing their properties are presented together.

Download or read it online for free here:

**Download link**

(1.1MB, PDF)

## Similar books

**Categories, Types, and Structures**

by

**Andrea Asperti, Giuseppe Longo**-

**MIT Press**

Here is an introduction to category theory for the working computer scientist. It is a self-contained introduction to general category theory and the mathematical structures that constitute the theoretical background.

(

**18867**views)

**The Design and Implementation of Probabilistic Programming Languages**

by

**Noah D. Goodman, Andreas Stuhlmüller**-

**dippl.org**

This book explains how to implement PPLs by lightweight embedding into a host language. We illustrate this by designing WebPPL, a small PPL embedded in Javascript. We show how to implement several algorithms for universal probabilistic inference.

(

**6679**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.

(

**16255**views)

**Structure and Interpretation of Computer Programs**

by

**Harold Abelson, Gerald Jay Sussman, Julie Sussman**-

**McGraw-Hill**

The book teaches how to program by employing the tools of abstraction and modularity. The central philosophy is that programming is the task of breaking large problems into small ones. You will learn how to program and how to think about programming.

(

**18156**views)