Question: IN ML: fun g x = let val inc = 1; fun f y = y + inc; fun h z = let val inc
IN ML:
fun g x =
let
val inc = 1;
fun f y = y + inc;
fun h z =
let
val inc = 2;
in
f z
end;
in
h x
end;
a) Draw a circle around every block, and number the blocks
b) Identify each definition of a name
c) For each definition, describe its scope in terms of your block numbers
d) For each occurrence of a name (other than a definition of that name), show which definition is used to bind it. Check that this agrees with your scopes
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
