Phase 0: Expanding Macros...
Expanded AST:
[
"let", [
[
"x",
0
],
[
"y",
10
],
[
"result",
[
"str",
""
] ]
],
[
"do",
[
"if",
[
"if",
[
"!=",
"x",
0
],
[
"=",
[
"/",
"y",
"x"
],
5
],
false
],
[
"set",
"result",
[
"str",
"Math worked!"
]
],
[
"set",
"result",
[
"str",
"Avoided divide by zero!"
]
]
],
[
"set",
"x",
[
"+",
"x",
15
]
],
[
"set",
"result",
[
"if",
[
"<",
"x",
10
],
[
"str",
"Too small"
],
[
"if",
[
"=",
"x",
15
],
[
"str",
"Exactly 15!"
],
[
"str",
"Fallback hit"
]
]
] ],
[
"record",
"x",
"x",
"result",
"result"
]
] ]
Phase 1: Analyzing AST statically... Phase
2: Compiling to Bytecode...
Dispatching execution to Worker thread...
Execution ended. Status Code: 2
Final Output: {
"type": "completed",
"data": {
"result": "Exactly 15!",
"x": 15 }
}