Human-Centered Programming Languages
This book is designed as a flexible textbook for teaching about programming languages through the different kinds of people that study them, and through an interdisciplinary approach. Its largest audience is upper-level undergraduates in computing majors, but is intended to have something for everyone from newcomers to experts
Chapters
Chapter 1 Introduction
| ... | |
Chapter 2 What is a Language?
| ... | |
Chapter 3 Programming in Rust
| ... | |
Chapter 4 Regular Expressions
| ... | |
Chapter 5 Context-Free Grammars
| ... | |
Chapter 6 Parsing Expression Grammars
| ... | |
Chapter 7 Abstract Syntax Trees and Interpreters
| ... | |
Chapter 8 Operational Semantics
| ... | |
Chapter 9 Types
| ... | |
Chapter 10 Users and Designers
| ... | |
Chapter 11 Quantitative Methods & Surveys
| ... | |
Chapter 12 Qualitative Studies
| ... | |
Chapter 13 Gender
| ... | |
Chapter 14 Disability
| ... | |
Chapter 15 Media Programming
| ... | |
Chapter 16 Play
| ... | |
Chapter 17 Natural Language
| ... | |
Chapter 18 Diagramming
| ... | |
Chapter 19 Process Calculus
| ... | |
Chapter 20 Cost Semantics
| ... | |
More Instructor Materials
| ... | |
ReferencesEverything cited | ||
IndexCommon words and where they are | ||
SearchFind where words occur | ||
MediaImages and video in the book |
License
All Rights ReservedWant to print this book or generate a PDF? See all chapters on a single page and then print or export. Long books can take some time to render.
Citation
Rose Bohrer (2024). Human-Centered Programming Languages. …, retrieved 10/9/2024.
Editions
1st 7/13/2023 read
This edition of HCPL is a living document. It is not a mere work-in-progress but is subject to substantial change as the work evolves.