{ &print("Test 1: "); let (x = 6) in &println(x); &print("Test 2: "); let (x = 6) in { set x = 23; &println(x); }; &print("Test 3: "); let (fact = 0) in { set fact = fn(n) [if &equal?(n, 1) then 1 else (n * &fact((n - 1)))]; &println(&fact(5)); }; &print("Test 4: "); let (q = fn(n, q) [if &equal?(n, 1) then 1 else (n * &q((n - 1), q))]) in &println( &q(5, q)); &print("Test 5: "); & fn(n, q) [if &equal?(n, 1) then 1 else (n * &q((n - 1), q))] (5, fn(n, q) [if &equal?(n, 1) then 1 else (n * &q((n - 1), q))]); }