do: %action = %action dereference, from: %reference, %reference: %code = dereference from: %reference spent: %code compiled code: %code dereference, from: %reference = restore dereference from: %reference restore dereference, from: %reference, spent: %code = restore dereference, from: %reference, %reference: %code restore dereference, from: %reference = compile compile, source: @ %reference = dereference from: %reference needs another pass: yes compile, source: %code = compile, compiled code: %code compile, needs another pass: yes = next pass compile = compilation finished next pass compiled code: %code = next pass, source: %code next pass = compile compilation finished, compiled code: %code = compilation finished, out: %code compilation finished = print code print code, out: %tuple = print code, @print: %tuple