10. Appendix: Resources
Todo
consider moving most of these into the corresponding chapters as “further reading”
10.1. Key resources
10.2. Code examples
The code examples for this course are at https://github.com/lucproglangcourse. (The non-Scala ones are much less likely to change.)
The recommended process for exploring an example is to fork it into your own GitHub account. Please create issues and/or submit pull requests with improvements or corrections.
It is important for you to receive notifications of changes to the key examples.
The best way to achieve this is to receive notifications through your GitHub account by watching and/or starring the repositories of interest directly.
10.3. Recommended/supplementary texts
Scala for the Impatient, Second Edition By: Cay S. Horstmann Publisher: Addison-Wesley Professional Pub. Date: December 15, 2016 available free on Safari
Basics of Compiler Design By: Torben Mogensen available online
Learning Concurrent Programming in Scala By: Aleksandar Prokopec Publisher: Packt Publishing Pub. Date: November 28, 2014 available free on Safari
Seven Concurrency Models in Seven Weeks By: Paul Butcher Publisher: Pragmatic Bookshelf Pub. Date: June 30, 2014 available free on Safari
10.4. Additional texts on Scala
Hands-On Scala By: Li Haoyi https://www.handsonscala.com/ Chapters 1-5 available free
Programming in Scala, Fifth Edition By: Martin Odersky; Lex Spoon; Bill Venners Publisher: Artima Press Pub. Date: June 2021 https://www.artima.com/shop/programming_in_scala_5ed
Programming Scala, 3rd Edition By Dean Wampler Publisher: O’Reilly Media, Inc. Pub. Date: June 2021 available free on Safari
Scala Cookbook, 2nd Edition By: Alvin Alexander Publisher: O’Reilly Media, Inc. Pub. Date: August 2021 available free on Safari companion site
Scala Test-Driven Development By: Gaurav Sood Publisher: Packt Publishing Pub. Date: October 27, 2016 available free on Safari
Functional Programming in Scala (advanced) By: Paul Chiusano and Rúnar Bjarnason Foreword by Martin Odersky Publisher: Manning Publications Pub. Date: August 2014 available free on Safari
10.5. Online Scala resources
10.6. Resources on program representation and interpretation
10.7. Other resources
Origami Programming by Jeremy Gibbons: PDF
On Understanding Types, Data Abstraction, and Polymorphism by Cardelli and Wegner PDF
Masterminds of Programming, 1st Edition By: Federico Biancuzzi; Shane Warden Publisher: O’Reilly Media, Inc. Pub. Date: March 27, 2009 available free on EBL
Programming Language Pragmatics (3rd ed.) By: Michael L. Scott Pub date: Mar 23, 2009 Elsevier Science & Technology companion site
Functional Thinking By: Neal Ford Publisher: O’Reilly Media, Inc. Pub. Date: July 10, 2014 available free on Safari
Real World Haskell By: Bryan O’Sullivan, Don Stewart, and John Goerzen Publisher: O’Reilly Media. Pub. Date: November 2008 available online for free
Haskell: The Craft of Functional Programming (3rd Edition) By: Simon Thompson Publisher Addison-Wesley Professional Pub. Date: 2012 online companion site