Skip to content
scrambled
Programming Language Theory Book

Practical foundations for programming languages

Children Coverpractical-foundations-for-programming-languages Date2016 DescriptionA mathematically rigorous treatment of programming language theory grounded in proof theory and type theory. Defines language concepts through static and dynamic semantics using only elementary mathematics. Isbn978-1107150300 JourneyProgramming Language Theory Tags
  • type theory
  • proof theory
  • operational semantics
  • programming languages
Urlhttps://www.cs.cmu.edu/~rwh/pfpl/
  • Comprehensive theory of programming languages based on:

  • Language concepts are precisely defined by:

    • Static semantics.

    • Dynamic semantics.

    -> Essential intuitive and rigorous tools.

    -> Rely on only elementary mathematics.

  • Usages of Static semantics and Dynamic semantics:

    • Analyze and prove properties of languages.

    • Provide the framework for combining and comparing language features.

  • Concepts:

    • Fundamental data types: Sums and products.

    • Polymorphic and abstract types.

    • Dynamic typing.

    • Dynamic dispatch.

    • Subtyping and refinement types.

    • Symbols and dynamic classification.

    • Parallelism and cost semantics.

    • Concurrency and distribution.

  • Applications:

    • Language implementation.

    • Development of logics for reasoning about programs.

    • Formal verification language properties such as type safety.