Gå direkt till innehållet
Experiential Introduction to Principles of Programming Languages, An
Spara

Experiential Introduction to Principles of Programming Languages, An

Författare:
inbunden, 2022
Engelska
A textbook that uses a hands-on approach to teach principles of programming languages, with Java as the implementation language.

This introductory textbook teaches the principles of programming languages by using an experiential learning style, in which students learn about language features by realizing those features in a pedagogical compiler. Students use Java--the most commonly used programming language in the first two years of the computer science curriculum--as the implementation language throughout. The book also discusses a range of emerging topics in programming languages missing from existing textbooks, including concurrency, Big Data, and event-driven programming. The goal is to prepare students to design, implement, analyze, and understand both domain-specific and general-purpose programming languages.

The book first develops basic concepts in languages, including means of computation using primitive values, means of combination such as variable definition and functions, and means of abstraction such as functions and recursive functions. It then examines imperative features such as references, concurrency features such as fork, and reactive features such as event handling. Finally, it looks at language features that express important, and often different, perspectives of thinking about computation, including those of logic programming and flow-based programming. Each chapter is associated with a working implementation of a small programming language, and students are encouraged to obtain the code corresponding to the chapters and follow along. Students should have experience in programming with Java as well as an understanding of object-oriented classes, inheritance, polymorphism, and static classes.

Författare
Hridesh Rajan
ISBN
9780262045452
Språk
Engelska
Vikt
446 gram
Utgivningsdatum
2022-05-03
Sidor
304