32 lines
		
	
	
		
			668 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			668 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
## there are 8 local temporaries variables in the top-level context
 | 
						|
## the 8 temporaries defined inside the block expression are parked
 | 
						|
## at the top-level context. 'a' assigned before the block expression
 | 
						|
## is a global variable.
 | 
						|
 | 
						|
a := 1234
 | 
						|
 | 
						|
{
 | 
						|
	| a b c d |
 | 
						|
	| e f g h |
 | 
						|
	a := 10
 | 
						|
	b := 20
 | 
						|
	c := 30
 | 
						|
	d := 40
 | 
						|
	e := 50
 | 
						|
	f := 60
 | 
						|
	g := 70
 | 
						|
	h := 80
 | 
						|
		
 | 
						|
	if (~= a 10) { print "ERROR: a inside the block expression is not 10\n" } \
 | 
						|
	else { printf "OK: %d\n" a };
 | 
						|
}
 | 
						|
 | 
						|
a := (+ a 1)
 | 
						|
c := (sprintf "%d" a)
 | 
						|
 | 
						|
if (~= a 1235) { printf "ERROR: a is not 1235\n" } \
 | 
						|
else { printf "OK: %d\n" a };
 | 
						|
 | 
						|
if (nql? c "1235") { printf "ERROR: c is not \"1235\"\n" } \
 | 
						|
else { printf "OK: %s\n" c };
 |