Programming Languages: Concepts and Implementation

    Request Your Digital Review Copy

    Programming Languages: Concepts and Implementation is a textbook on the fundamental principles of programming languages through a combination of concept-based and interpreter-based approaches. The book focuses on implementation and features conceptual and programming exercises that give students practical experience applying language theory and concepts.

    The book also showcases the construction of a progressive series of language interpreters in Python that implements core language concepts such as scope, first-class functions, and parameter passing.

    Other programming styles, including logic/declarative programming, and compelling language features, such as first-class continuations, are also discussed. Concepts are presented in Python, Scheme, JavaScript, Ruby, ML, Haskell, Prolog, and other programming languages.

    This book is intended as a general-purpose textbook for a course on programming languages.

    Sample Chapters:

    Key Features:

    • Hybrid conceptual- and interpreter-based approach.
    • Hands-on implementation-oriented focus.
    • Numerous conceptual and programming exercises.
    • Interpreter-based projects in Python (and Scheme).
    • All interpreter code (and solutions) in Python are provided as a Git repository in BitBucket.
    • Language tutorial appendices on Python, ML, and Haskell.