An Experiential Introduction to Principles of Programming Languages (The MIT Press)

English | 2022 | ISBN: 0262045451 | 283 pages | True EPUB | 13.76 MB

A textbook that uses a hands-on approach to teach principles of programming languages, with Java as the implementation language.
This introductory textbook uses a hands-on approach to teach the principles of programming languages. Using Java as the implementation language, Rajan covers a range of emerging topics, including concurrency, Big Data, and event-driven programming. Students will learn to design, implement, analyze, and understand both domain-specific and general-purpose programming languages.
• Develops basic concepts in languages, including means of computation, means of combination, and means of abstraction.
• Examines imperative features such as references, concurrency features such as fork, and reactive features such as event handling.
• Covers language features that express differing perspectives of thinking about computation, including those of logic programming and flow-based programming.
• Presumes Java programming experience and understanding of object-oriented classes, inheritance, polymorphism, and static classes.
• Each chapter corresponds with a working implementation of a small programming language allowing students to follow along.