2 Acknowledgments
This book has benefited from the attention of many.
Special thanks to the students at Brown University, who have been
drafted into acting as a crucible for every iteration of this
book. They have supported it with unusual grace, creating a welcoming
and rewarding environment for pedagogic effort. Thanks also to our
academic homes—
Abhabongse Janthong, Alex Kleiman, Athyuttam Eleti, Benjamin S. Shapiro, Cheng Xie, Dave Lee, Ebube Chuba, Harrison Pincket, Igor Moreno Santos, Iuliu Balibanu, Jason Bennett, Jon Sailor, Josh Paley, Kelechi Ukadike, Kendrick Cole, Marc Smith, Raymond Plante, Samuel Ainsworth, Samuel Kortchmar, frodokomodo (on github).
Dorai Sitaram, John Palmer, Kartik Singhal, Kathi Fisler, Lev Litichevskiy.
Sorawee Porncharoenwase.
This book is completely dependent on Pyret, and thus on the many people who have created and sustained it.
We thank Matthew Butterick for his help with book styling (though the ultimate style is ours, so don’t blame him!).
Many, many years ago, Alejandro Schäffer introduced SK to the idea of nature as a fat-fingered typist. Alejandro’s fingerprints are over many parts of the first half of this book, even if he wouldn’t necessarily approve of what has come of his patient instruction.
The second half of this book is essentially a translation into Pyret of Programming Languages: Application and Interpretation, and owes thanks to all the people acknowledged there.
The chapter on Interactive Games as Reactive Systems is translated from How to Design Worlds, and owes thanks to all the people acknowledged there.
This book is written in Scribble, the authoring tool of choice for the discerning programmer.
We thank cloudconvert for their free conversion tools.