
'------
'BLOCKS
'======


'BLOCKS CONFINING SCOPE

dim int i=1

scope
  dim int i=2
  'print i
end scope

scope (
  dim int i=2
  'print i
)

(
  dim int i=2
  'print i
)

inner
  dim int i=2
  'print i
end inner

inner {
  dim int i=2
  'print i
}

scope {
  dim int i=2
  'print i
}


'NON EXECUTABLE BLOCKS


/*
  dim int i=2
  print i
*/


'ASSEMBLY CODE BLOCKS

mov eax,0
mov ecx,5
(
 inc eax
 dec ecx
 jg repeat 'jump back to 'block'
)

mov eax,0
mov ecx,5
(
 inc eax
 dec ecx
 jg repeat 'jump back to '('
)

mov eax,0
mov ecx,5
(
 dec ecx
 jl exit 'jump forward to ')'
 inc eax
 repeat 'jump back to '('
)

'print eax


print i '1