Unformatted text preview: though we haven’t yet
covered enough to understand what they mean:
1. What are the values in the language?
What are the values manipulated by the language, and what operations
on those values are represented in the language? What are the expressed and denoted values in the language? What are the types in the language? 2. What are the scoping rules of the language?
How are variables bound? How are they used? What variables are in scope where? 3. What are the effects in the language?
Are there side-effects in the language? Can execution of programs have effects in the world? Can execution of programs have effects on other programs? Can execution of a program fail to terminate? Are there non-local control effects in the language? 4. What are the static properties of the language?
What can we predict about the behavior of a program without knowing
the run-time values?
How can we analyze a program to predict this behavior? 4 1.3 Inductive Deﬁnitions of Sets
Know Your Sets
When writing code for a procedure, you must know precisely what
kinds of values may occur as arguments to the procedure, and what
View Full Document
- Fall '09