**Programming and Programming Languages**

by Shriram Krishnamurthi

**Publisher**: Brown University 2014**Number of pages**: 262

**Description**:

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, ending in the investigation of universally useful algorithms. The other book is an introduction to programming languages: a study, from one level up, of the media by which we structure these data and programs.

Download or read it online for free here:

**Read online**

(online html)

## Similar books

**Compositional Semantics**

by

**Gary Hardegree**-

**UMass Amherst**

Contents: Basic Categorial Syntax; Shortcomings of Standard Categorial Syntax; Expanded Categorial Syntax; Examples of Expanded Categorial Syntax; Categorial Logic; Basic Categorial Semantics; Lambda-Abstraction; Expanded Categorial Semantics; etc.

(

**9906**views)

**Lecture Notes on Static Analysis**

by

**Michael I. Schwartzbach**-

**IT University of Copenhagen**

These notes present principles and applications of static analysis of programs. We cover type analysis, lattice theory, control flow graphs, dataflow analysis, fixed-point algorithms, narrowing and widening, control flow analysis, pointer analysis.

(

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

(

**2195**views)

**Proofs and Types**

by

**J. Girard, Y. Lafont, P. Taylor**-

**Cambridge University Press**

This little book comes from a short graduate course on typed lambda-calculus given at the Universite Paris. It is not intended to be encyclopedic and the selection of topics was really quite haphazard. Some very basic knowledge of logic is needed.

(

**12506**views)