CSE 320: Programming Languages @ CSU, San Bernardino

Go back to home page

Mutation

Required Reading

  1. Chapter 8 of PLAI. It is highly recommend to do the exercises in the book.

The focus in this reading should be on the following concepts:

  • What is a box? What is it used for?
  • Why does adding sequencing require the interpreter to take and return the environment?
  • What is the "store," and why is it needed? How does adding the store change the environment?
  • How does adding state change the semantics of existing operations, like addition and multiplication?
  • What is the difference between identifiers and variables?
  • What are "call by value" and "call by reference?" What is the difference between them?

Optional Reading

This reading is actually a preview of the next lab!

  1. “The Essence of Functional Programming” by Philip Wadler.

Advanced Reading

Nothing this week. The main reading is enough, and I want everyone to focus on understanding it.