Errata for Foundations of Computer Science First Edition

  • Page 22, last paragraph should have ended with “and 5) getting whether an exception was thrown.”.
  • Page 41, “load balancer” should not have been called a combiner. It can be constructed similar to a combiner but with a more complex API. A load balancer is more closely related to a splitter or sharer, namely a sequencer with multiple workers.
  • Page 49, “Load Balancer” should not be in the table.
  • Page 77, paragraph starting on Line 3 should have been:

A processing unit mock can keep two lists of messages. One with messages to be received, and one with the sent messages. When the receive function is called, the next message is returned; when the send function is called, the message is added to the list of sent messages. This works for both synchronous and asynchronous calls.

  • Page 114, the table on top. The second to last row should be “| b = 3; | mov b, 3 | p3: mov b, 3 |”.