r |- e1 eval false r |- e2 eval v
------------------------------------------
r |- (e1 and e2) eval false
r |- e1 eval true r |- e2 eval v
------------------------------------------
r |- (e1 and e2) eval v
if e1 then e2 else false
AR of AR of the block
caller of p p where p is declared
^ ------------------ ^
CL |___|_ | |
+-->| | |
| ------------------ |
| | _|______| SL
| | |
| ------------------
| | ----- |<-+---+---+---+
| | x | 1 | | | | | |
| | -------- | | | | |
| | b | true | | | | | |
| | -------- | | | | |
CL | ------------------ | | | |
| | | | |
| q I | | | |
| ------------------ | | | |
|___|_ | | | | |
+-->| | | | | |
| ------------------ | | | |
| | _|__|SL | | |
| | | | | |
| ------------------ | | |
| | ----- | | | |
| | x | 2 | | | | |
| | ----- | | | |
CL | ------------------ | | |
| | | |
| r I | | |
| ------------------ | | |
|___|_ | | | |
+-->| | | | |
| ------------------ | | |
| | _|______|SL | |
| | | | |
| ------------------ | |
| | --------- | | |
| | b | false | | | |
| | --------- | | |
CL | ------------------ | |
| | |
| q II | |
| ------------------ | |
|___|_ | | |
+-->| | | |
| ------------------ | |
| | _|__________|SL |
| | | |
| ------------------ |
| | ----- | |
| | x | 0 | | |
| | ----- | |
| ------------------ |
| |
| r II |
| ------------------ |
|___|_ | |
| | |
------------------ |
| _|______________|SL
| |
------------------
| -------- |
| b | true | |
| -------- |
------------------
CL = Control Link
SL = Static Link