Replace Node.js compile-modules.js with direct Sx_compiler.compile_module calls in mcp_tree.ml. No subprocess, no JIT warm-up, no Node.js. 23 files compile in 1.9 seconds. Also includes rebuilt WASM kernel (iterative cek_run) and all 23 bytecode modules recompiled with native compiler. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 line
47 KiB
JSON
1 line
47 KiB
JSON
{"magic":"SXBC","version":1,"hash":"c7a9d30b770b9dd4","module":{"bytecode":[51,1,0,128,0,0,5,51,3,0,128,2,0,5,51,5,0,128,4,0,5,51,7,0,128,6,0,5,51,9,0,128,8,0,5,51,11,0,128,10,0,5,51,13,0,128,12,0,5,51,15,0,128,14,0,5,51,17,0,128,16,0,5,51,19,0,128,18,0,5,51,21,0,128,20,0,5,51,23,0,128,22,0,5,51,25,0,128,24,0,5,51,27,0,128,26,0,5,51,29,0,128,28,0,5,51,31,0,128,30,0,5,51,33,0,128,32,0,5,51,35,0,128,34,0,5,51,37,0,128,36,0,5,51,39,0,128,38,0,5,51,41,0,128,40,0,5,51,43,0,128,42,0,5,51,45,0,128,44,0,5,51,47,0,128,46,0,5,51,49,0,128,48,0,5,51,51,0,128,50,0,5,51,53,0,128,52,0,5,51,55,0,128,54,0,5,51,57,0,128,56,0,5,51,59,0,128,58,0,5,51,61,0,128,60,0,5,51,63,0,128,62,0,5,51,65,0,128,64,0,5,51,67,0,128,66,0,5,51,69,0,128,68,0,5,51,71,0,128,70,0,5,51,73,0,128,72,0,5,51,75,0,128,74,0,5,51,77,0,128,76,0,5,51,79,0,128,78,0,5,51,81,0,128,80,0,50],"constants":[{"t":"s","v":"make-pool"},{"t":"code","v":{"bytecode":[1,0,0,1,2,0,52,1,0,1,33,7,0,52,2,0,0,32,4,0,52,3,0,0,1,4,0,1,5,0,1,6,0,65,1,0,65,2,0,50],"constants":[{"t":"s","v":"entries"},{"t":"s","v":"primitive?"},{"t":"s","v":"mutable-list"},{"t":"s","v":"list"},{"t":"s","v":"index"},{"t":"s","v":"_count"},{"t":"n","v":0}]}},{"t":"s","v":"pool-add"},{"t":"code","v":{"bytecode":[1,0,0,5,20,2,0,52,1,0,1,17,2,20,4,0,1,5,0,52,3,0,2,17,3,20,7,0,20,8,0,52,6,0,2,33,13,0,20,7,0,20,8,0,52,3,0,2,32,69,0,20,7,0,1,9,0,52,3,0,2,17,4,20,7,0,20,8,0,20,11,0,52,10,0,3,5,20,7,0,1,9,0,20,11,0,1,13,0,52,12,0,2,52,10,0,3,5,20,14,0,20,4,0,1,15,0,52,3,0,2,20,2,0,48,2,5,20,11,0,50],"constants":[{"t":"s","v":"Add a value to the constant pool, return its index. Deduplicates."},{"t":"s","v":"serialize"},{"t":"s","v":"value"},{"t":"s","v":"get"},{"t":"s","v":"pool"},{"t":"s","v":"index"},{"t":"s","v":"has-key?"},{"t":"s","v":"idx-map"},{"t":"s","v":"key"},{"t":"s","v":"_count"},{"t":"s","v":"dict-set!"},{"t":"s","v":"idx"},{"t":"s","v":"+"},{"t":"n","v":1},{"t":"s","v":"append!"},{"t":"s","v":"entries"}]}},{"t":"s","v":"make-scope"},{"t":"code","v":{"bytecode":[1,0,0,1,1,0,1,2,0,52,3,0,0,1,4,0,52,3,0,0,1,5,0,20,5,0,1,6,0,4,65,5,0,50],"constants":[{"t":"s","v":"next-slot"},{"t":"n","v":0},{"t":"s","v":"upvalues"},{"t":"s","v":"list"},{"t":"s","v":"locals"},{"t":"s","v":"parent"},{"t":"s","v":"is-function"}]}},{"t":"s","v":"scope-define-local"},{"t":"code","v":{"bytecode":[1,0,0,5,51,3,0,20,5,0,1,6,0,52,4,0,2,52,2,0,2,52,1,0,1,17,2,20,7,0,33,13,0,20,7,0,1,8,0,52,4,0,2,32,71,0,20,5,0,1,9,0,52,4,0,2,17,3,20,10,0,20,5,0,1,6,0,52,4,0,2,1,11,0,4,1,8,0,20,8,0,1,12,0,20,12,0,65,3,0,48,2,5,20,5,0,1,9,0,20,8,0,1,15,0,52,14,0,2,52,13,0,3,5,20,8,0,50],"constants":[{"t":"s","v":"Add a local variable, return its slot index.\n Idempotent: if name already has a slot, return it."},{"t":"s","v":"first"},{"t":"s","v":"filter"},{"t":"code","v":{"bytecode":[20,2,0,1,3,0,52,1,0,2,20,3,0,52,0,0,2,50],"constants":[{"t":"s","v":"="},{"t":"s","v":"get"},{"t":"s","v":"l"},{"t":"s","v":"name"}]}},{"t":"s","v":"get"},{"t":"s","v":"scope"},{"t":"s","v":"locals"},{"t":"s","v":"existing"},{"t":"s","v":"slot"},{"t":"s","v":"next-slot"},{"t":"s","v":"append!"},{"t":"s","v":"mutable"},{"t":"s","v":"name"},{"t":"s","v":"dict-set!"},{"t":"s","v":"+"},{"t":"n","v":1}]}},{"t":"s","v":"scope-resolve"},{"t":"code","v":{"bytecode":[1,0,0,5,20,2,0,52,1,0,1,33,18,0,1,3,0,20,4,0,1,5,0,1,6,0,65,2,0,32,79,1,20,2,0,1,8,0,52,7,0,2,17,2,51,10,0,20,8,0,52,9,0,2,17,3,20,11,0,33,41,0,51,10,0,20,8,0,52,13,0,2,52,12,0,1,17,4,1,3,0,20,14,0,1,15,0,52,7,0,2,1,5,0,1,14,0,65,2,0,32,8,1,20,2,0,1,16,0,52,7,0,2,17,4,51,17,0,20,18,0,52,9,0,2,17,5,20,19,0,33,41,0,51,17,0,20,18,0,52,13,0,2,52,12,0,1,17,6,1,3,0,20,20,0,1,21,0,52,7,0,2,1,5,0,1,22,0,65,2,0,32,193,0,20,2,0,1,23,0,52,7,0,2,17,6,20,23,0,52,1,0,1,33,18,0,1,3,0,20,4,0,1,5,0,1,6,0,65,2,0,32,153,0,20,24,0,20,23,0,20,4,0,48,2,17,7,20,26,0,1,5,0,52,7,0,2,1,6,0,52,25,0,2,33,6,0,20,26,0,32,114,0,20,2,0,1,27,0,52,7,0,2,33,98,0,20,2,0,1,16,0,52,7,0,2,52,28,0,1,17,8,20,29,0,20,2,0,1,16,0,52,7,0,2,1,3,0,20,26,0,1,3,0,52,7,0,2,1,30,0,20,26,0,1,5,0,52,7,0,2,1,14,0,52,25,0,2,1,21,0,20,31,0,1,4,0,20,4,0,65,4,0,48,2,5,1,3,0,20,31,0,1,5,0,1,22,0,65,2,0,32,3,0,20,26,0,50],"constants":[{"t":"s","v":"Resolve a variable name. Returns {:type \"local\"|\"upvalue\"|\"global\", :index N}.\n Upvalue captures only happen at function boundaries (is-function=true).\n Let scopes share the enclosing function's frame — their locals are\n accessed directly without upvalue indirection."},{"t":"s","v":"nil?"},{"t":"s","v":"scope"},{"t":"s","v":"index"},{"t":"s","v":"name"},{"t":"s","v":"type"},{"t":"s","v":"global"},{"t":"s","v":"get"},{"t":"s","v":"locals"},{"t":"s","v":"some"},{"t":"code","v":{"bytecode":[20,2,0,1,3,0,52,1,0,2,20,3,0,52,0,0,2,50],"constants":[{"t":"s","v":"="},{"t":"s","v":"get"},{"t":"s","v":"l"},{"t":"s","v":"name"}]}},{"t":"s","v":"found"},{"t":"s","v":"first"},{"t":"s","v":"filter"},{"t":"s","v":"local"},{"t":"s","v":"slot"},{"t":"s","v":"upvalues"},{"t":"code","v":{"bytecode":[20,2,0,1,3,0,52,1,0,2,20,3,0,52,0,0,2,50],"constants":[{"t":"s","v":"="},{"t":"s","v":"get"},{"t":"s","v":"u"},{"t":"s","v":"name"}]}},{"t":"s","v":"upvals"},{"t":"s","v":"uv-found"},{"t":"s","v":"uv"},{"t":"s","v":"uv-index"},{"t":"s","v":"upvalue"},{"t":"s","v":"parent"},{"t":"s","v":"scope-resolve"},{"t":"s","v":"="},{"t":"s","v":"parent-result"},{"t":"s","v":"is-function"},{"t":"s","v":"len"},{"t":"s","v":"append!"},{"t":"s","v":"is-local"},{"t":"s","v":"uv-idx"}]}},{"t":"s","v":"make-emitter"},{"t":"code","v":{"bytecode":[1,0,0,20,1,0,48,0,1,2,0,1,4,0,52,3,0,1,33,7,0,52,4,0,0,32,4,0,52,5,0,0,65,2,0,50],"constants":[{"t":"s","v":"pool"},{"t":"s","v":"make-pool"},{"t":"s","v":"bytecode"},{"t":"s","v":"primitive?"},{"t":"s","v":"mutable-list"},{"t":"s","v":"list"}]}},{"t":"s","v":"emit-byte"},{"t":"code","v":{"bytecode":[20,0,0,20,2,0,1,3,0,52,1,0,2,20,4,0,49,2,50],"constants":[{"t":"s","v":"append!"},{"t":"s","v":"get"},{"t":"s","v":"em"},{"t":"s","v":"bytecode"},{"t":"s","v":"byte"}]}},{"t":"s","v":"emit-u16"},{"t":"code","v":{"bytecode":[20,0,0,20,1,0,20,3,0,1,4,0,52,2,0,2,48,2,5,20,0,0,20,1,0,20,3,0,1,4,0,52,6,0,2,52,5,0,1,1,4,0,52,2,0,2,49,2,50],"constants":[{"t":"s","v":"emit-byte"},{"t":"s","v":"em"},{"t":"s","v":"mod"},{"t":"s","v":"value"},{"t":"n","v":256},{"t":"s","v":"floor"},{"t":"s","v":"/"}]}},{"t":"s","v":"emit-i16"},{"t":"code","v":{"bytecode":[20,1,0,1,2,0,52,0,0,2,33,13,0,20,1,0,1,4,0,52,3,0,2,32,3,0,20,1,0,17,2,20,5,0,20,6,0,20,7,0,49,2,50],"constants":[{"t":"s","v":"<"},{"t":"s","v":"value"},{"t":"n","v":0},{"t":"s","v":"+"},{"t":"n","v":65536},{"t":"s","v":"emit-u16"},{"t":"s","v":"em"},{"t":"s","v":"v"}]}},{"t":"s","v":"emit-op"},{"t":"code","v":{"bytecode":[20,0,0,20,1,0,20,2,0,49,2,50],"constants":[{"t":"s","v":"emit-byte"},{"t":"s","v":"em"},{"t":"s","v":"opcode"}]}},{"t":"s","v":"emit-const"},{"t":"code","v":{"bytecode":[20,0,0,20,2,0,1,3,0,52,1,0,2,20,4,0,48,2,17,2,20,5,0,20,2,0,1,6,0,48,2,5,20,7,0,20,2,0,20,8,0,49,2,50],"constants":[{"t":"s","v":"pool-add"},{"t":"s","v":"get"},{"t":"s","v":"em"},{"t":"s","v":"pool"},{"t":"s","v":"value"},{"t":"s","v":"emit-op"},{"t":"n","v":1},{"t":"s","v":"emit-u16"},{"t":"s","v":"idx"}]}},{"t":"s","v":"current-offset"},{"t":"code","v":{"bytecode":[20,2,0,1,3,0,52,1,0,2,52,0,0,1,50],"constants":[{"t":"s","v":"len"},{"t":"s","v":"get"},{"t":"s","v":"em"},{"t":"s","v":"bytecode"}]}},{"t":"s","v":"patch-i16"},{"t":"code","v":{"bytecode":[1,0,0,5,20,2,0,1,3,0,52,1,0,2,33,13,0,20,2,0,1,5,0,52,4,0,2,32,3,0,20,2,0,17,3,20,7,0,1,8,0,52,6,0,2,17,4,20,10,0,20,11,0,20,13,0,1,14,0,52,12,0,2,52,9,0,3,5,20,10,0,20,11,0,1,15,0,52,4,0,2,20,13,0,1,14,0,52,17,0,2,52,16,0,1,1,14,0,52,12,0,2,52,9,0,3,50],"constants":[{"t":"s","v":"Patch a previously emitted i16 at the given bytecode offset."},{"t":"s","v":"<"},{"t":"s","v":"value"},{"t":"n","v":0},{"t":"s","v":"+"},{"t":"n","v":65536},{"t":"s","v":"get"},{"t":"s","v":"em"},{"t":"s","v":"bytecode"},{"t":"s","v":"set-nth!"},{"t":"s","v":"bc"},{"t":"s","v":"offset"},{"t":"s","v":"mod"},{"t":"s","v":"v"},{"t":"n","v":256},{"t":"n","v":1},{"t":"s","v":"floor"},{"t":"s","v":"/"}]}},{"t":"s","v":"compile-expr"},{"t":"code","v":{"bytecode":[1,0,0,5,20,2,0,52,1,0,1,33,14,0,20,3,0,20,4,0,1,5,0,49,2,32,42,1,20,2,0,52,7,0,1,1,8,0,52,6,0,2,33,14,0,20,9,0,20,4,0,20,2,0,49,2,32,11,1,20,2,0,52,7,0,1,1,10,0,52,6,0,2,33,14,0,20,9,0,20,4,0,20,2,0,49,2,32,236,0,20,2,0,52,7,0,1,1,11,0,52,6,0,2,33,26,0,20,3,0,20,4,0,20,2,0,33,6,0,1,12,0,32,3,0,1,13,0,49,2,32,193,0,20,2,0,52,7,0,1,1,14,0,52,6,0,2,33,19,0,20,9,0,20,4,0,20,15,0,20,2,0,48,1,49,2,32,157,0,20,2,0,52,7,0,1,1,16,0,52,6,0,2,33,22,0,20,17,0,20,4,0,20,18,0,20,2,0,48,1,20,19,0,49,3,32,118,0,20,2,0,52,7,0,1,1,20,0,52,6,0,2,33,56,0,20,2,0,52,21,0,1,33,26,0,20,3,0,20,4,0,1,22,0,48,2,5,20,23,0,20,4,0,1,24,0,49,2,32,17,0,20,25,0,20,4,0,20,2,0,20,19,0,20,26,0,49,4,32,45,0,20,2,0,52,7,0,1,1,27,0,52,6,0,2,33,17,0,20,28,0,20,4,0,20,2,0,20,19,0,49,3,32,11,0,20,9,0,20,4,0,20,2,0,49,2,50],"constants":[{"t":"s","v":"Compile an expression. tail? indicates tail position for TCO."},{"t":"s","v":"nil?"},{"t":"s","v":"expr"},{"t":"s","v":"emit-op"},{"t":"s","v":"em"},{"t":"n","v":2},{"t":"s","v":"="},{"t":"s","v":"type-of"},{"t":"s","v":"number"},{"t":"s","v":"emit-const"},{"t":"s","v":"string"},{"t":"s","v":"boolean"},{"t":"n","v":3},{"t":"n","v":4},{"t":"s","v":"keyword"},{"t":"s","v":"keyword-name"},{"t":"s","v":"symbol"},{"t":"s","v":"compile-symbol"},{"t":"s","v":"symbol-name"},{"t":"s","v":"scope"},{"t":"s","v":"list"},{"t":"s","v":"empty?"},{"t":"n","v":64},{"t":"s","v":"emit-u16"},{"t":"n","v":0},{"t":"s","v":"compile-list"},{"t":"s","v":"tail?"},{"t":"s","v":"dict"},{"t":"s","v":"compile-dict"}]}},{"t":"s","v":"compile-symbol"},{"t":"code","v":{"bytecode":[20,0,0,20,1,0,20,2,0,48,2,17,3,20,5,0,1,6,0,52,4,0,2,1,7,0,52,3,0,2,33,33,0,20,8,0,20,9,0,1,10,0,48,2,5,20,11,0,20,9,0,20,5,0,1,12,0,52,4,0,2,49,2,32,96,0,20,5,0,1,6,0,52,4,0,2,1,13,0,52,3,0,2,33,33,0,20,8,0,20,9,0,1,14,0,48,2,5,20,11,0,20,9,0,20,5,0,1,12,0,52,4,0,2,49,2,32,43,0,20,15,0,20,9,0,1,16,0,52,4,0,2,20,2,0,48,2,17,4,20,8,0,20,9,0,1,17,0,48,2,5,20,18,0,20,9,0,20,19,0,49,2,50],"constants":[{"t":"s","v":"scope-resolve"},{"t":"s","v":"scope"},{"t":"s","v":"name"},{"t":"s","v":"="},{"t":"s","v":"get"},{"t":"s","v":"resolved"},{"t":"s","v":"type"},{"t":"s","v":"local"},{"t":"s","v":"emit-op"},{"t":"s","v":"em"},{"t":"n","v":16},{"t":"s","v":"emit-byte"},{"t":"s","v":"index"},{"t":"s","v":"upvalue"},{"t":"n","v":18},{"t":"s","v":"pool-add"},{"t":"s","v":"pool"},{"t":"n","v":20},{"t":"s","v":"emit-u16"},{"t":"s","v":"idx"}]}},{"t":"s","v":"compile-dict"},{"t":"code","v":{"bytecode":[20,1,0,52,0,0,1,17,3,20,3,0,52,2,0,1,17,4,51,5,0,20,3,0,52,4,0,2,5,20,6,0,20,7,0,1,8,0,48,2,5,20,9,0,20,7,0,20,10,0,49,2,50],"constants":[{"t":"s","v":"keys"},{"t":"s","v":"expr"},{"t":"s","v":"len"},{"t":"s","v":"ks"},{"t":"s","v":"for-each"},{"t":"code","v":{"bytecode":[20,0,0,20,1,0,20,2,0,48,2,5,20,3,0,20,1,0,20,5,0,20,2,0,52,4,0,2,20,6,0,4,49,4,50],"constants":[{"t":"s","v":"emit-const"},{"t":"s","v":"em"},{"t":"s","v":"k"},{"t":"s","v":"compile-expr"},{"t":"s","v":"get"},{"t":"s","v":"expr"},{"t":"s","v":"scope"}]}},{"t":"s","v":"emit-op"},{"t":"s","v":"em"},{"t":"n","v":65},{"t":"s","v":"emit-u16"},{"t":"s","v":"count"}]}},{"t":"s","v":"compile-list"},{"t":"code","v":{"bytecode":[20,1,0,52,0,0,1,17,4,20,1,0,52,2,0,1,17,5,20,6,0,52,5,0,1,1,7,0,52,4,0,2,52,3,0,1,33,23,0,20,8,0,20,9,0,20,6,0,20,10,0,20,11,0,20,12,0,49,5,32,175,3,20,13,0,20,6,0,48,1,17,6,20,14,0,1,15,0,52,4,0,2,33,20,0,20,16,0,20,9,0,20,10,0,20,11,0,20,12,0,49,4,32,132,3,20,14,0,1,17,0,52,4,0,2,33,20,0,20,18,0,20,9,0,20,10,0,20,11,0,20,12,0,49,4,32,99,3,20,14,0,1,19,0,52,4,0,2,33,20,0,20,20,0,20,9,0,20,10,0,20,11,0,20,12,0,49,4,32,66,3,20,14,0,1,21,0,52,4,0,2,33,20,0,20,22,0,20,9,0,20,10,0,20,11,0,20,12,0,49,4,32,33,3,20,14,0,1,23,0,52,4,0,2,33,20,0,20,24,0,20,9,0,20,10,0,20,11,0,20,12,0,49,4,32,0,3,20,14,0,1,25,0,52,4,0,2,33,20,0,20,24,0,20,9,0,20,10,0,20,11,0,20,12,0,49,4,32,223,2,20,14,0,1,26,0,52,4,0,2,33,20,0,20,27,0,20,9,0,20,10,0,20,11,0,20,12,0,49,4,32,190,2,20,14,0,1,28,0,52,4,0,2,33,20,0,20,27,0,20,9,0,20,10,0,20,11,0,20,12,0,49,4,32,157,2,20,14,0,1,29,0,52,4,0,2,33,17,0,20,30,0,20,9,0,20,10,0,20,11,0,49,3,32,127,2,20,14,0,1,31,0,52,4,0,2,33,17,0,20,30,0,20,9,0,20,10,0,20,11,0,49,3,32,97,2,20,14,0,1,32,0,52,4,0,2,33,17,0,20,33,0,20,9,0,20,10,0,20,11,0,49,3,32,67,2,20,14,0,1,34,0,52,4,0,2,33,17,0,20,35,0,20,9,0,20,10,0,20,11,0,49,3,32,37,2,20,14,0,1,36,0,52,4,0,2,33,14,0,20,37,0,20,9,0,20,10,0,49,2,32,10,2,20,14,0,1,38,0,52,4,0,2,33,20,0,20,39,0,20,9,0,20,10,0,20,11,0,20,12,0,49,4,32,233,1,20,14,0,1,40,0,52,4,0,2,33,20,0,20,41,0,20,9,0,20,10,0,20,11,0,20,12,0,49,4,32,200,1,20,14,0,1,42,0,52,4,0,2,33,20,0,20,43,0,20,9,0,20,10,0,20,11,0,20,12,0,49,4,32,167,1,20,14,0,1,44,0,52,4,0,2,33,17,0,20,45,0,20,9,0,20,10,0,20,11,0,49,3,32,137,1,20,14,0,1,46,0,52,4,0,2,33,17,0,20,45,0,20,9,0,20,10,0,20,11,0,49,3,32,107,1,20,14,0,1,47,0,52,4,0,2,33,17,0,20,48,0,20,9,0,20,10,0,20,11,0,49,3,32,77,1,20,14,0,1,49,0,52,4,0,2,33,14,0,20,50,0,20,9,0,1,51,0,49,2,32,50,1,20,14,0,1,52,0,52,4,0,2,33,14,0,20,50,0,20,9,0,1,51,0,49,2,32,23,1,20,14,0,1,53,0,52,4,0,2,33,14,0,20,50,0,20,9,0,1,51,0,49,2,32,252,0,20,14,0,1,54,0,52,4,0,2,33,14,0,20,50,0,20,9,0,1,51,0,49,2,32,225,0,20,14,0,1,55,0,52,4,0,2,33,14,0,20,50,0,20,9,0,1,51,0,49,2,32,198,0,20,14,0,1,56,0,52,4,0,2,33,14,0,20,50,0,20,9,0,1,51,0,49,2,32,171,0,20,14,0,1,57,0,52,4,0,2,33,14,0,20,50,0,20,9,0,1,51,0,49,2,32,144,0,20,14,0,1,58,0,52,4,0,2,33,14,0,20,50,0,20,9,0,1,51,0,49,2,32,117,0,20,14,0,1,46,0,52,4,0,2,33,17,0,20,45,0,20,9,0,20,10,0,20,11,0,49,3,32,87,0,20,14,0,1,59,0,52,4,0,2,33,21,0,20,60,0,20,9,0,20,10,0,52,0,0,1,20,11,0,49,3,32,53,0,20,14,0,1,61,0,52,4,0,2,33,20,0,20,62,0,20,9,0,20,10,0,20,11,0,20,12,0,49,4,32,20,0,20,8,0,20,9,0,20,6,0,20,10,0,20,11,0,20,12,0,49,5,50],"constants":[{"t":"s","v":"first"},{"t":"s","v":"expr"},{"t":"s","v":"rest"},{"t":"s","v":"not"},{"t":"s","v":"="},{"t":"s","v":"type-of"},{"t":"s","v":"head"},{"t":"s","v":"symbol"},{"t":"s","v":"compile-call"},{"t":"s","v":"em"},{"t":"s","v":"args"},{"t":"s","v":"scope"},{"t":"s","v":"tail?"},{"t":"s","v":"symbol-name"},{"t":"s","v":"name"},{"t":"s","v":"if"},{"t":"s","v":"compile-if"},{"t":"s","v":"when"},{"t":"s","v":"compile-when"},{"t":"s","v":"and"},{"t":"s","v":"compile-and"},{"t":"s","v":"or"},{"t":"s","v":"compile-or"},{"t":"s","v":"let"},{"t":"s","v":"compile-let"},{"t":"s","v":"let*"},{"t":"s","v":"begin"},{"t":"s","v":"compile-begin"},{"t":"s","v":"do"},{"t":"s","v":"lambda"},{"t":"s","v":"compile-lambda"},{"t":"s","v":"fn"},{"t":"s","v":"define"},{"t":"s","v":"compile-define"},{"t":"s","v":"set!"},{"t":"s","v":"compile-set"},{"t":"s","v":"quote"},{"t":"s","v":"compile-quote"},{"t":"s","v":"cond"},{"t":"s","v":"compile-cond"},{"t":"s","v":"case"},{"t":"s","v":"compile-case"},{"t":"s","v":"->"},{"t":"s","v":"compile-thread"},{"t":"s","v":"defcomp"},{"t":"s","v":"compile-defcomp"},{"t":"s","v":"defisland"},{"t":"s","v":"defmacro"},{"t":"s","v":"compile-defmacro"},{"t":"s","v":"defstyle"},{"t":"s","v":"emit-op"},{"t":"n","v":2},{"t":"s","v":"defhandler"},{"t":"s","v":"defpage"},{"t":"s","v":"defquery"},{"t":"s","v":"defaction"},{"t":"s","v":"defrelation"},{"t":"s","v":"deftype"},{"t":"s","v":"defeffect"},{"t":"s","v":"quasiquote"},{"t":"s","v":"compile-quasiquote"},{"t":"s","v":"letrec"},{"t":"s","v":"compile-letrec"}]}},{"t":"s","v":"compile-if"},{"t":"code","v":{"bytecode":[20,1,0,52,0,0,1,17,4,20,1,0,1,3,0,52,2,0,2,17,5,20,1,0,52,5,0,1,1,6,0,52,4,0,2,33,13,0,20,1,0,1,6,0,52,2,0,2,32,1,0,2,17,6,20,7,0,20,8,0,20,9,0,20,10,0,4,48,4,5,20,11,0,20,8,0,1,12,0,48,2,5,20,13,0,20,8,0,48,1,17,7,20,14,0,20,8,0,1,15,0,48,2,5,20,7,0,20,8,0,20,16,0,20,10,0,20,17,0,48,4,5,20,11,0,20,8,0,1,18,0,48,2,5,20,13,0,20,8,0,48,1,17,8,20,14,0,20,8,0,1,15,0,48,2,5,20,19,0,20,8,0,20,20,0,20,13,0,20,8,0,48,1,20,20,0,1,6,0,52,22,0,2,52,21,0,2,48,3,5,20,24,0,52,23,0,1,33,14,0,20,11,0,20,8,0,1,6,0,48,2,32,17,0,20,7,0,20,8,0,20,24,0,20,10,0,20,17,0,48,4,5,20,19,0,20,8,0,20,25,0,20,13,0,20,8,0,48,1,20,25,0,1,6,0,52,22,0,2,52,21,0,2,49,3,50],"constants":[{"t":"s","v":"first"},{"t":"s","v":"args"},{"t":"s","v":"nth"},{"t":"n","v":1},{"t":"s","v":">"},{"t":"s","v":"len"},{"t":"n","v":2},{"t":"s","v":"compile-expr"},{"t":"s","v":"em"},{"t":"s","v":"test"},{"t":"s","v":"scope"},{"t":"s","v":"emit-op"},{"t":"n","v":33},{"t":"s","v":"current-offset"},{"t":"s","v":"emit-i16"},{"t":"n","v":0},{"t":"s","v":"then-expr"},{"t":"s","v":"tail?"},{"t":"n","v":32},{"t":"s","v":"patch-i16"},{"t":"s","v":"else-jump"},{"t":"s","v":"-"},{"t":"s","v":"+"},{"t":"s","v":"nil?"},{"t":"s","v":"else-expr"},{"t":"s","v":"end-jump"}]}},{"t":"s","v":"compile-when"},{"t":"code","v":{"bytecode":[20,1,0,52,0,0,1,17,4,20,1,0,52,2,0,1,17,5,20,3,0,20,4,0,20,5,0,20,6,0,4,48,4,5,20,7,0,20,4,0,1,8,0,48,2,5,20,9,0,20,4,0,48,1,17,6,20,10,0,20,4,0,1,11,0,48,2,5,20,12,0,20,4,0,20,13,0,20,6,0,20,14,0,48,4,5,20,7,0,20,4,0,1,15,0,48,2,5,20,9,0,20,4,0,48,1,17,7,20,10,0,20,4,0,1,11,0,48,2,5,20,16,0,20,4,0,20,17,0,20,9,0,20,4,0,48,1,20,17,0,1,20,0,52,19,0,2,52,18,0,2,48,3,5,20,7,0,20,4,0,1,20,0,48,2,5,20,16,0,20,4,0,20,21,0,20,9,0,20,4,0,48,1,20,21,0,1,20,0,52,19,0,2,52,18,0,2,49,3,50],"constants":[{"t":"s","v":"first"},{"t":"s","v":"args"},{"t":"s","v":"rest"},{"t":"s","v":"compile-expr"},{"t":"s","v":"em"},{"t":"s","v":"test"},{"t":"s","v":"scope"},{"t":"s","v":"emit-op"},{"t":"n","v":33},{"t":"s","v":"current-offset"},{"t":"s","v":"emit-i16"},{"t":"n","v":0},{"t":"s","v":"compile-begin"},{"t":"s","v":"body"},{"t":"s","v":"tail?"},{"t":"n","v":32},{"t":"s","v":"patch-i16"},{"t":"s","v":"skip-jump"},{"t":"s","v":"-"},{"t":"s","v":"+"},{"t":"n","v":2},{"t":"s","v":"end-jump"}]}},{"t":"s","v":"compile-and"},{"t":"code","v":{"bytecode":[20,1,0,52,0,0,1,33,14,0,20,2,0,20,3,0,1,4,0,49,2,32,174,0,20,1,0,52,6,0,1,1,7,0,52,5,0,2,33,24,0,20,8,0,20,3,0,20,1,0,52,9,0,1,20,10,0,20,11,0,49,4,32,133,0,20,8,0,20,3,0,20,1,0,52,9,0,1,20,10,0,4,48,4,5,20,2,0,20,3,0,1,12,0,48,2,5,20,2,0,20,3,0,1,13,0,48,2,5,20,14,0,20,3,0,48,1,17,4,20,15,0,20,3,0,1,16,0,48,2,5,20,2,0,20,3,0,1,17,0,48,2,5,20,18,0,20,3,0,20,1,0,52,19,0,1,20,10,0,20,11,0,48,4,5,20,20,0,20,3,0,20,21,0,20,14,0,20,3,0,48,1,20,21,0,1,24,0,52,23,0,2,52,22,0,2,49,3,50],"constants":[{"t":"s","v":"empty?"},{"t":"s","v":"args"},{"t":"s","v":"emit-op"},{"t":"s","v":"em"},{"t":"n","v":3},{"t":"s","v":"="},{"t":"s","v":"len"},{"t":"n","v":1},{"t":"s","v":"compile-expr"},{"t":"s","v":"first"},{"t":"s","v":"scope"},{"t":"s","v":"tail?"},{"t":"n","v":6},{"t":"n","v":33},{"t":"s","v":"current-offset"},{"t":"s","v":"emit-i16"},{"t":"n","v":0},{"t":"n","v":5},{"t":"s","v":"compile-and"},{"t":"s","v":"rest"},{"t":"s","v":"patch-i16"},{"t":"s","v":"skip"},{"t":"s","v":"-"},{"t":"s","v":"+"},{"t":"n","v":2}]}},{"t":"s","v":"compile-or"},{"t":"code","v":{"bytecode":[20,1,0,52,0,0,1,33,14,0,20,2,0,20,3,0,1,4,0,49,2,32,174,0,20,1,0,52,6,0,1,1,7,0,52,5,0,2,33,24,0,20,8,0,20,3,0,20,1,0,52,9,0,1,20,10,0,20,11,0,49,4,32,133,0,20,8,0,20,3,0,20,1,0,52,9,0,1,20,10,0,4,48,4,5,20,2,0,20,3,0,1,12,0,48,2,5,20,2,0,20,3,0,1,13,0,48,2,5,20,14,0,20,3,0,48,1,17,4,20,15,0,20,3,0,1,16,0,48,2,5,20,2,0,20,3,0,1,17,0,48,2,5,20,18,0,20,3,0,20,1,0,52,19,0,1,20,10,0,20,11,0,48,4,5,20,20,0,20,3,0,20,21,0,20,14,0,20,3,0,48,1,20,21,0,1,24,0,52,23,0,2,52,22,0,2,49,3,50],"constants":[{"t":"s","v":"empty?"},{"t":"s","v":"args"},{"t":"s","v":"emit-op"},{"t":"s","v":"em"},{"t":"n","v":4},{"t":"s","v":"="},{"t":"s","v":"len"},{"t":"n","v":1},{"t":"s","v":"compile-expr"},{"t":"s","v":"first"},{"t":"s","v":"scope"},{"t":"s","v":"tail?"},{"t":"n","v":6},{"t":"n","v":34},{"t":"s","v":"current-offset"},{"t":"s","v":"emit-i16"},{"t":"n","v":0},{"t":"n","v":5},{"t":"s","v":"compile-or"},{"t":"s","v":"rest"},{"t":"s","v":"patch-i16"},{"t":"s","v":"skip"},{"t":"s","v":"-"},{"t":"s","v":"+"},{"t":"n","v":2}]}},{"t":"s","v":"compile-begin"},{"t":"code","v":{"bytecode":[20,2,0,52,1,0,1,52,0,0,1,6,33,19,0,5,20,5,0,1,6,0,52,4,0,2,52,3,0,1,52,0,0,1,33,13,0,51,8,0,20,2,0,52,7,0,2,32,1,0,2,5,20,2,0,52,1,0,1,33,14,0,20,9,0,20,10,0,1,11,0,49,2,32,94,0,20,2,0,52,13,0,1,1,14,0,52,12,0,2,33,24,0,20,15,0,20,10,0,20,2,0,52,16,0,1,20,5,0,20,17,0,49,4,32,53,0,20,15,0,20,10,0,20,2,0,52,16,0,1,20,5,0,4,48,4,5,20,9,0,20,10,0,1,18,0,48,2,5,20,19,0,20,10,0,20,2,0,52,20,0,1,20,5,0,20,17,0,49,4,50],"constants":[{"t":"s","v":"not"},{"t":"s","v":"empty?"},{"t":"s","v":"exprs"},{"t":"s","v":"nil?"},{"t":"s","v":"get"},{"t":"s","v":"scope"},{"t":"s","v":"parent"},{"t":"s","v":"for-each"},{"t":"code","v":{"bytecode":[20,2,0,52,1,0,1,1,3,0,52,0,0,2,6,33,62,0,5,20,2,0,52,5,0,1,1,6,0,52,4,0,2,6,33,43,0,5,20,2,0,52,7,0,1,52,1,0,1,1,8,0,52,0,0,2,6,33,20,0,5,20,9,0,20,2,0,52,7,0,1,48,1,1,10,0,52,0,0,2,33,59,0,20,2,0,1,12,0,52,11,0,2,17,1,20,13,0,52,1,0,1,1,8,0,52,0,0,2,33,11,0,20,9,0,20,13,0,48,1,32,3,0,20,13,0,17,2,20,14,0,20,15,0,20,16,0,49,2,32,1,0,2,50],"constants":[{"t":"s","v":"="},{"t":"s","v":"type-of"},{"t":"s","v":"expr"},{"t":"s","v":"list"},{"t":"s","v":">="},{"t":"s","v":"len"},{"t":"n","v":2},{"t":"s","v":"first"},{"t":"s","v":"symbol"},{"t":"s","v":"symbol-name"},{"t":"s","v":"define"},{"t":"s","v":"nth"},{"t":"n","v":1},{"t":"s","v":"name-expr"},{"t":"s","v":"scope-define-local"},{"t":"s","v":"scope"},{"t":"s","v":"name"}]}},{"t":"s","v":"emit-op"},{"t":"s","v":"em"},{"t":"n","v":2},{"t":"s","v":"="},{"t":"s","v":"len"},{"t":"n","v":1},{"t":"s","v":"compile-expr"},{"t":"s","v":"first"},{"t":"s","v":"tail?"},{"t":"n","v":5},{"t":"s","v":"compile-begin"},{"t":"s","v":"rest"}]}},{"t":"s","v":"compile-let"},{"t":"code","v":{"bytecode":[20,3,0,52,2,0,1,52,1,0,1,1,4,0,52,0,0,2,33,147,0,20,5,0,20,3,0,52,2,0,1,48,1,17,4,20,3,0,1,7,0,52,6,0,2,17,5,20,3,0,1,9,0,52,8,0,2,17,6,52,10,0,0,17,7,52,10,0,0,17,8,51,12,0,20,13,0,52,11,0,2,5,1,16,0,52,15,0,1,20,17,0,52,10,0,2,20,18,0,52,14,0,2,17,9,20,19,0,52,15,0,1,20,20,0,52,10,0,2,52,10,0,1,17,10,20,19,0,52,15,0,1,20,22,0,52,21,0,2,17,11,20,23,0,20,24,0,20,25,0,20,26,0,52,10,0,2,20,27,0,20,28,0,49,4,32,77,0,20,3,0,52,2,0,1,17,4,20,3,0,52,29,0,1,17,5,20,30,0,20,27,0,48,1,17,6,20,32,0,1,33,0,20,27,0,1,33,0,52,34,0,2,52,31,0,3,5,51,35,0,20,13,0,52,11,0,2,5,20,36,0,20,24,0,20,18,0,20,32,0,20,28,0,49,4,50],"constants":[{"t":"s","v":"="},{"t":"s","v":"type-of"},{"t":"s","v":"first"},{"t":"s","v":"args"},{"t":"s","v":"symbol"},{"t":"s","v":"symbol-name"},{"t":"s","v":"nth"},{"t":"n","v":1},{"t":"s","v":"slice"},{"t":"n","v":2},{"t":"s","v":"list"},{"t":"s","v":"for-each"},{"t":"code","v":{"bytecode":[20,0,0,20,1,0,20,5,0,52,4,0,1,52,3,0,1,1,6,0,52,2,0,2,33,10,0,20,5,0,52,4,0,1,32,11,0,20,5,0,52,4,0,1,52,7,0,1,48,2,5,20,0,0,20,8,0,20,5,0,1,10,0,52,9,0,2,49,2,50],"constants":[{"t":"s","v":"append!"},{"t":"s","v":"params"},{"t":"s","v":"="},{"t":"s","v":"type-of"},{"t":"s","v":"first"},{"t":"s","v":"binding"},{"t":"s","v":"symbol"},{"t":"s","v":"make-symbol"},{"t":"s","v":"inits"},{"t":"s","v":"nth"},{"t":"n","v":1}]}},{"t":"s","v":"bindings"},{"t":"s","v":"concat"},{"t":"s","v":"make-symbol"},{"t":"s","v":"fn"},{"t":"s","v":"params"},{"t":"s","v":"body"},{"t":"s","v":"loop-name"},{"t":"s","v":"lambda-expr"},{"t":"s","v":"cons"},{"t":"s","v":"inits"},{"t":"s","v":"compile-letrec"},{"t":"s","v":"em"},{"t":"s","v":"letrec-bindings"},{"t":"s","v":"call-expr"},{"t":"s","v":"scope"},{"t":"s","v":"tail?"},{"t":"s","v":"rest"},{"t":"s","v":"make-scope"},{"t":"s","v":"dict-set!"},{"t":"s","v":"let-scope"},{"t":"s","v":"next-slot"},{"t":"s","v":"get"},{"t":"code","v":{"bytecode":[20,3,0,52,2,0,1,52,1,0,1,1,4,0,52,0,0,2,33,15,0,20,5,0,20,3,0,52,2,0,1,48,1,32,7,0,20,3,0,52,2,0,1,17,1,20,3,0,1,7,0,52,6,0,2,17,2,20,8,0,20,9,0,20,10,0,48,2,17,3,20,11,0,20,12,0,20,13,0,20,9,0,4,48,4,5,20,14,0,20,12,0,1,15,0,48,2,5,20,16,0,20,12,0,20,17,0,49,2,50],"constants":[{"t":"s","v":"="},{"t":"s","v":"type-of"},{"t":"s","v":"first"},{"t":"s","v":"binding"},{"t":"s","v":"symbol"},{"t":"s","v":"symbol-name"},{"t":"s","v":"nth"},{"t":"n","v":1},{"t":"s","v":"scope-define-local"},{"t":"s","v":"let-scope"},{"t":"s","v":"name"},{"t":"s","v":"compile-expr"},{"t":"s","v":"em"},{"t":"s","v":"value"},{"t":"s","v":"emit-op"},{"t":"n","v":17},{"t":"s","v":"emit-byte"},{"t":"s","v":"slot"}]}},{"t":"s","v":"compile-begin"}]}},{"t":"s","v":"compile-letrec"},{"t":"code","v":{"bytecode":[1,0,0,5,20,2,0,52,1,0,1,17,4,20,2,0,52,3,0,1,17,5,20,4,0,20,5,0,48,1,17,6,20,7,0,1,8,0,20,5,0,1,8,0,52,9,0,2,52,6,0,3,5,51,11,0,20,12,0,52,10,0,2,17,7,51,14,0,51,15,0,1,17,0,20,12,0,52,18,0,1,52,16,0,2,52,10,0,2,52,13,0,2,5,20,19,0,20,20,0,20,21,0,20,7,0,20,22,0,49,4,50],"constants":[{"t":"s","v":"Compile letrec: all names visible during value compilation.\n 1. Define all local slots (initialized to nil).\n 2. Compile each value and assign — names are already in scope\n so mutually recursive functions can reference each other."},{"t":"s","v":"first"},{"t":"s","v":"args"},{"t":"s","v":"rest"},{"t":"s","v":"make-scope"},{"t":"s","v":"scope"},{"t":"s","v":"dict-set!"},{"t":"s","v":"let-scope"},{"t":"s","v":"next-slot"},{"t":"s","v":"get"},{"t":"s","v":"map"},{"t":"code","v":{"bytecode":[20,3,0,52,2,0,1,52,1,0,1,1,4,0,52,0,0,2,33,15,0,20,5,0,20,3,0,52,2,0,1,48,1,32,7,0,20,3,0,52,2,0,1,17,1,20,6,0,20,7,0,20,8,0,48,2,17,2,20,9,0,20,10,0,1,11,0,48,2,5,20,9,0,20,10,0,1,12,0,48,2,5,20,13,0,20,10,0,20,14,0,48,2,5,20,14,0,50],"constants":[{"t":"s","v":"="},{"t":"s","v":"type-of"},{"t":"s","v":"first"},{"t":"s","v":"binding"},{"t":"s","v":"symbol"},{"t":"s","v":"symbol-name"},{"t":"s","v":"scope-define-local"},{"t":"s","v":"let-scope"},{"t":"s","v":"name"},{"t":"s","v":"emit-op"},{"t":"s","v":"em"},{"t":"n","v":2},{"t":"n","v":17},{"t":"s","v":"emit-byte"},{"t":"s","v":"slot"}]}},{"t":"s","v":"bindings"},{"t":"s","v":"for-each"},{"t":"code","v":{"bytecode":[20,1,0,52,0,0,1,17,1,20,1,0,1,3,0,52,2,0,2,17,2,20,4,0,20,5,0,20,6,0,1,3,0,52,2,0,2,20,7,0,4,48,4,5,20,8,0,20,5,0,1,9,0,48,2,5,20,10,0,20,5,0,20,11,0,49,2,50],"constants":[{"t":"s","v":"first"},{"t":"s","v":"pair"},{"t":"s","v":"nth"},{"t":"n","v":1},{"t":"s","v":"compile-expr"},{"t":"s","v":"em"},{"t":"s","v":"binding"},{"t":"s","v":"let-scope"},{"t":"s","v":"emit-op"},{"t":"n","v":17},{"t":"s","v":"emit-byte"},{"t":"s","v":"slot"}]}},{"t":"code","v":{"bytecode":[20,2,0,20,3,0,52,1,0,2,20,4,0,20,3,0,52,1,0,2,52,0,0,2,50],"constants":[{"t":"s","v":"list"},{"t":"s","v":"nth"},{"t":"s","v":"bindings"},{"t":"s","v":"i"},{"t":"s","v":"slots"}]}},{"t":"s","v":"range"},{"t":"n","v":0},{"t":"s","v":"len"},{"t":"s","v":"compile-begin"},{"t":"s","v":"em"},{"t":"s","v":"body"},{"t":"s","v":"tail?"}]}},{"t":"s","v":"compile-lambda"},{"t":"code","v":{"bytecode":[20,1,0,52,0,0,1,17,3,20,1,0,52,2,0,1,17,4,20,3,0,20,4,0,48,1,17,5,20,5,0,48,0,17,6,20,7,0,1,8,0,3,52,6,0,3,5,51,10,0,20,11,0,52,9,0,2,5,20,12,0,20,13,0,20,14,0,20,7,0,3,48,4,5,20,15,0,20,13,0,1,16,0,48,2,5,20,7,0,1,18,0,52,17,0,2,17,7,1,19,0,20,21,0,52,20,0,1,1,22,0,20,7,0,1,23,0,52,17,0,2,52,20,0,1,1,24,0,20,13,0,1,25,0,52,17,0,2,1,26,0,52,17,0,2,1,27,0,20,13,0,1,27,0,52,17,0,2,65,4,0,17,8,20,28,0,20,29,0,1,25,0,52,17,0,2,20,30,0,48,2,17,9,20,15,0,20,29,0,1,31,0,48,2,5,20,32,0,20,29,0,20,33,0,48,2,5,51,34,0,20,21,0,52,9,0,2,50],"constants":[{"t":"s","v":"first"},{"t":"s","v":"args"},{"t":"s","v":"rest"},{"t":"s","v":"make-scope"},{"t":"s","v":"scope"},{"t":"s","v":"make-emitter"},{"t":"s","v":"dict-set!"},{"t":"s","v":"fn-scope"},{"t":"s","v":"is-function"},{"t":"s","v":"for-each"},{"t":"code","v":{"bytecode":[20,2,0,52,1,0,1,1,3,0,52,0,0,2,33,11,0,20,4,0,20,2,0,48,1,32,67,0,20,2,0,52,5,0,1,6,33,35,0,5,20,2,0,52,7,0,1,52,6,0,1,6,33,19,0,5,20,2,0,52,8,0,1,52,1,0,1,1,3,0,52,0,0,2,33,15,0,20,4,0,20,2,0,52,8,0,1,48,1,32,3,0,20,2,0,17,1,20,9,0,1,10,0,52,0,0,2,52,6,0,1,6,33,15,0,5,20,9,0,1,11,0,52,0,0,2,52,6,0,1,33,14,0,20,12,0,20,13,0,20,9,0,49,2,32,1,0,2,50],"constants":[{"t":"s","v":"="},{"t":"s","v":"type-of"},{"t":"s","v":"p"},{"t":"s","v":"symbol"},{"t":"s","v":"symbol-name"},{"t":"s","v":"list?"},{"t":"s","v":"not"},{"t":"s","v":"empty?"},{"t":"s","v":"first"},{"t":"s","v":"name"},{"t":"s","v":"&key"},{"t":"s","v":"&rest"},{"t":"s","v":"scope-define-local"},{"t":"s","v":"fn-scope"}]}},{"t":"s","v":"params"},{"t":"s","v":"compile-begin"},{"t":"s","v":"fn-em"},{"t":"s","v":"body"},{"t":"s","v":"emit-op"},{"t":"n","v":50},{"t":"s","v":"get"},{"t":"s","v":"upvalues"},{"t":"s","v":"upvalue-count"},{"t":"s","v":"len"},{"t":"s","v":"upvals"},{"t":"s","v":"arity"},{"t":"s","v":"locals"},{"t":"s","v":"constants"},{"t":"s","v":"pool"},{"t":"s","v":"entries"},{"t":"s","v":"bytecode"},{"t":"s","v":"pool-add"},{"t":"s","v":"em"},{"t":"s","v":"code"},{"t":"n","v":51},{"t":"s","v":"emit-u16"},{"t":"s","v":"code-idx"},{"t":"code","v":{"bytecode":[20,0,0,20,1,0,20,3,0,1,4,0,52,2,0,2,33,6,0,1,5,0,32,3,0,1,6,0,48,2,5,20,0,0,20,1,0,20,3,0,1,7,0,52,2,0,2,49,2,50],"constants":[{"t":"s","v":"emit-byte"},{"t":"s","v":"em"},{"t":"s","v":"get"},{"t":"s","v":"uv"},{"t":"s","v":"is-local"},{"t":"n","v":1},{"t":"n","v":0},{"t":"s","v":"index"}]}}]}},{"t":"s","v":"compile-define"},{"t":"code","v":{"bytecode":[20,1,0,52,0,0,1,17,3,20,4,0,52,3,0,1,1,5,0,52,2,0,2,33,11,0,20,6,0,20,4,0,48,1,32,3,0,20,4,0,17,4,20,1,0,52,7,0,1,17,6,20,10,0,52,9,0,1,52,8,0,1,6,33,19,0,5,20,10,0,52,0,0,1,52,3,0,1,1,11,0,52,2,0,2,33,16,0,51,12,0,17,7,20,13,0,20,10,0,48,1,32,7,0,20,10,0,52,0,0,1,17,5,20,16,0,1,17,0,52,15,0,2,52,14,0,1,52,8,0,1,33,55,0,20,18,0,20,16,0,20,19,0,48,2,17,6,20,20,0,20,21,0,20,22,0,20,16,0,4,48,4,5,20,23,0,20,21,0,1,24,0,48,2,5,20,25,0,20,21,0,20,26,0,49,2,32,59,0,20,27,0,20,21,0,1,28,0,52,15,0,2,20,19,0,48,2,17,6,20,20,0,20,21,0,20,22,0,20,16,0,4,48,4,5,20,23,0,20,21,0,1,29,0,48,2,5,20,30,0,20,21,0,20,31,0,49,2,50],"constants":[{"t":"s","v":"first"},{"t":"s","v":"args"},{"t":"s","v":"="},{"t":"s","v":"type-of"},{"t":"s","v":"name-expr"},{"t":"s","v":"symbol"},{"t":"s","v":"symbol-name"},{"t":"s","v":"rest"},{"t":"s","v":"not"},{"t":"s","v":"empty?"},{"t":"s","v":"rest-args"},{"t":"s","v":"keyword"},{"t":"code","v":{"bytecode":[20,1,0,52,0,0,1,33,4,0,2,32,47,0,20,1,0,52,4,0,1,52,3,0,1,1,5,0,52,2,0,2,33,19,0,20,6,0,20,1,0,52,7,0,1,52,7,0,1,49,1,32,7,0,20,1,0,52,4,0,1,50],"constants":[{"t":"s","v":"empty?"},{"t":"s","v":"items"},{"t":"s","v":"="},{"t":"s","v":"type-of"},{"t":"s","v":"first"},{"t":"s","v":"keyword"},{"t":"s","v":"skip-annotations"},{"t":"s","v":"rest"}]}},{"t":"s","v":"skip-annotations"},{"t":"s","v":"nil?"},{"t":"s","v":"get"},{"t":"s","v":"scope"},{"t":"s","v":"parent"},{"t":"s","v":"scope-define-local"},{"t":"s","v":"name"},{"t":"s","v":"compile-expr"},{"t":"s","v":"em"},{"t":"s","v":"value"},{"t":"s","v":"emit-op"},{"t":"n","v":17},{"t":"s","v":"emit-byte"},{"t":"s","v":"slot"},{"t":"s","v":"pool-add"},{"t":"s","v":"pool"},{"t":"n","v":128},{"t":"s","v":"emit-u16"},{"t":"s","v":"name-idx"}]}},{"t":"s","v":"compile-set"},{"t":"code","v":{"bytecode":[20,3,0,52,2,0,1,52,1,0,1,1,4,0,52,0,0,2,33,15,0,20,5,0,20,3,0,52,2,0,1,48,1,32,7,0,20,3,0,52,2,0,1,17,3,20,3,0,1,7,0,52,6,0,2,17,4,20,8,0,20,9,0,20,10,0,48,2,17,5,20,11,0,20,12,0,20,13,0,20,9,0,4,48,4,5,20,15,0,1,16,0,52,14,0,2,1,17,0,52,0,0,2,33,33,0,20,18,0,20,12,0,1,19,0,48,2,5,20,20,0,20,12,0,20,15,0,1,21,0,52,14,0,2,49,2,32,96,0,20,15,0,1,16,0,52,14,0,2,1,22,0,52,0,0,2,33,33,0,20,18,0,20,12,0,1,23,0,48,2,5,20,20,0,20,12,0,20,15,0,1,21,0,52,14,0,2,49,2,32,43,0,20,24,0,20,12,0,1,25,0,52,14,0,2,20,10,0,48,2,17,6,20,18,0,20,12,0,1,26,0,48,2,5,20,27,0,20,12,0,20,28,0,49,2,50],"constants":[{"t":"s","v":"="},{"t":"s","v":"type-of"},{"t":"s","v":"first"},{"t":"s","v":"args"},{"t":"s","v":"symbol"},{"t":"s","v":"symbol-name"},{"t":"s","v":"nth"},{"t":"n","v":1},{"t":"s","v":"scope-resolve"},{"t":"s","v":"scope"},{"t":"s","v":"name"},{"t":"s","v":"compile-expr"},{"t":"s","v":"em"},{"t":"s","v":"value"},{"t":"s","v":"get"},{"t":"s","v":"resolved"},{"t":"s","v":"type"},{"t":"s","v":"local"},{"t":"s","v":"emit-op"},{"t":"n","v":17},{"t":"s","v":"emit-byte"},{"t":"s","v":"index"},{"t":"s","v":"upvalue"},{"t":"n","v":19},{"t":"s","v":"pool-add"},{"t":"s","v":"pool"},{"t":"n","v":21},{"t":"s","v":"emit-u16"},{"t":"s","v":"idx"}]}},{"t":"s","v":"compile-quote"},{"t":"code","v":{"bytecode":[20,1,0,52,0,0,1,33,14,0,20,2,0,20,3,0,1,4,0,49,2,32,15,0,20,5,0,20,3,0,20,1,0,52,6,0,1,49,2,50],"constants":[{"t":"s","v":"empty?"},{"t":"s","v":"args"},{"t":"s","v":"emit-op"},{"t":"s","v":"em"},{"t":"n","v":2},{"t":"s","v":"emit-const"},{"t":"s","v":"first"}]}},{"t":"s","v":"compile-cond"},{"t":"code","v":{"bytecode":[1,0,0,5,20,3,0,52,2,0,1,1,4,0,52,1,0,2,33,14,0,20,5,0,20,6,0,1,4,0,49,2,32,58,1,20,3,0,52,7,0,1,17,4,20,3,0,1,9,0,52,8,0,2,17,5,20,3,0,52,2,0,1,1,4,0,52,10,0,2,33,13,0,20,3,0,1,4,0,52,11,0,2,32,4,0,52,12,0,0,17,6,20,15,0,52,14,0,1,1,16,0,52,13,0,2,6,33,16,0,5,20,17,0,20,15,0,48,1,1,18,0,52,13,0,2,6,34,9,0,5,20,15,0,3,52,13,0,2,33,20,0,20,19,0,20,6,0,20,20,0,20,21,0,20,22,0,49,4,32,187,0,20,19,0,20,6,0,20,15,0,20,21,0,4,48,4,5,20,5,0,20,6,0,1,23,0,48,2,5,20,24,0,20,6,0,48,1,17,7,20,25,0,20,6,0,1,26,0,48,2,5,20,19,0,20,6,0,20,20,0,20,21,0,20,22,0,48,4,5,20,5,0,20,6,0,1,27,0,48,2,5,20,24,0,20,6,0,48,1,17,8,20,25,0,20,6,0,1,26,0,48,2,5,20,28,0,20,6,0,20,29,0,20,24,0,20,6,0,48,1,20,29,0,1,4,0,52,31,0,2,52,30,0,2,48,3,5,20,32,0,20,6,0,20,33,0,20,21,0,20,22,0,48,4,5,20,28,0,20,6,0,20,34,0,20,24,0,20,6,0,48,1,20,34,0,1,4,0,52,31,0,2,52,30,0,2,49,3,50],"constants":[{"t":"s","v":"Compile (cond test1 body1 test2 body2 ... :else fallback)."},{"t":"s","v":"<"},{"t":"s","v":"len"},{"t":"s","v":"args"},{"t":"n","v":2},{"t":"s","v":"emit-op"},{"t":"s","v":"em"},{"t":"s","v":"first"},{"t":"s","v":"nth"},{"t":"n","v":1},{"t":"s","v":">"},{"t":"s","v":"slice"},{"t":"s","v":"list"},{"t":"s","v":"="},{"t":"s","v":"type-of"},{"t":"s","v":"test"},{"t":"s","v":"keyword"},{"t":"s","v":"keyword-name"},{"t":"s","v":"else"},{"t":"s","v":"compile-expr"},{"t":"s","v":"body"},{"t":"s","v":"scope"},{"t":"s","v":"tail?"},{"t":"n","v":33},{"t":"s","v":"current-offset"},{"t":"s","v":"emit-i16"},{"t":"n","v":0},{"t":"n","v":32},{"t":"s","v":"patch-i16"},{"t":"s","v":"skip"},{"t":"s","v":"-"},{"t":"s","v":"+"},{"t":"s","v":"compile-cond"},{"t":"s","v":"rest-clauses"},{"t":"s","v":"end-jump"}]}},{"t":"s","v":"compile-case"},{"t":"code","v":{"bytecode":[1,0,0,5,20,1,0,20,2,0,20,4,0,52,3,0,1,20,5,0,4,48,4,5,20,4,0,52,6,0,1,17,4,20,7,0,20,2,0,20,8,0,20,5,0,20,9,0,49,4,50],"constants":[{"t":"s","v":"Compile (case expr val1 body1 val2 body2 ... :else fallback)."},{"t":"s","v":"compile-expr"},{"t":"s","v":"em"},{"t":"s","v":"first"},{"t":"s","v":"args"},{"t":"s","v":"scope"},{"t":"s","v":"rest"},{"t":"s","v":"compile-case-clauses"},{"t":"s","v":"clauses"},{"t":"s","v":"tail?"}]}},{"t":"s","v":"compile-case-clauses"},{"t":"code","v":{"bytecode":[20,2,0,52,1,0,1,1,3,0,52,0,0,2,33,26,0,20,4,0,20,5,0,1,6,0,48,2,5,20,4,0,20,5,0,1,3,0,49,2,32,150,1,20,2,0,52,7,0,1,17,4,20,2,0,1,9,0,52,8,0,2,17,5,20,2,0,52,1,0,1,1,3,0,52,10,0,2,33,13,0,20,2,0,1,3,0,52,11,0,2,32,4,0,52,12,0,0,17,6,20,15,0,52,14,0,1,1,16,0,52,13,0,2,6,33,16,0,5,20,17,0,20,15,0,48,1,1,18,0,52,13,0,2,6,34,9,0,5,20,15,0,3,52,13,0,2,33,32,0,20,4,0,20,5,0,1,6,0,48,2,5,20,19,0,20,5,0,20,20,0,20,21,0,20,22,0,49,4,32,11,1,20,4,0,20,5,0,1,23,0,48,2,5,20,19,0,20,5,0,20,15,0,20,21,0,4,48,4,5,20,24,0,20,5,0,1,26,0,52,25,0,2,1,13,0,48,2,17,7,20,4,0,20,5,0,1,27,0,48,2,5,20,28,0,20,5,0,20,29,0,48,2,5,20,30,0,20,5,0,1,3,0,48,2,5,20,4,0,20,5,0,1,31,0,48,2,5,20,32,0,20,5,0,48,1,17,7,20,33,0,20,5,0,1,34,0,48,2,5,20,4,0,20,5,0,1,6,0,48,2,5,20,19,0,20,5,0,20,20,0,20,21,0,20,22,0,48,4,5,20,4,0,20,5,0,1,35,0,48,2,5,20,32,0,20,5,0,48,1,17,8,20,33,0,20,5,0,1,34,0,48,2,5,20,36,0,20,5,0,20,37,0,20,32,0,20,5,0,48,1,20,37,0,1,3,0,52,39,0,2,52,38,0,2,48,3,5,20,40,0,20,5,0,20,41,0,20,21,0,20,22,0,48,4,5,20,36,0,20,5,0,20,42,0,20,32,0,20,5,0,48,1,20,42,0,1,3,0,52,39,0,2,52,38,0,2,49,3,50],"constants":[{"t":"s","v":"<"},{"t":"s","v":"len"},{"t":"s","v":"clauses"},{"t":"n","v":2},{"t":"s","v":"emit-op"},{"t":"s","v":"em"},{"t":"n","v":5},{"t":"s","v":"first"},{"t":"s","v":"nth"},{"t":"n","v":1},{"t":"s","v":">"},{"t":"s","v":"slice"},{"t":"s","v":"list"},{"t":"s","v":"="},{"t":"s","v":"type-of"},{"t":"s","v":"test"},{"t":"s","v":"keyword"},{"t":"s","v":"keyword-name"},{"t":"s","v":"else"},{"t":"s","v":"compile-expr"},{"t":"s","v":"body"},{"t":"s","v":"scope"},{"t":"s","v":"tail?"},{"t":"n","v":6},{"t":"s","v":"pool-add"},{"t":"s","v":"get"},{"t":"s","v":"pool"},{"t":"n","v":52},{"t":"s","v":"emit-u16"},{"t":"s","v":"name-idx"},{"t":"s","v":"emit-byte"},{"t":"n","v":33},{"t":"s","v":"current-offset"},{"t":"s","v":"emit-i16"},{"t":"n","v":0},{"t":"n","v":32},{"t":"s","v":"patch-i16"},{"t":"s","v":"skip"},{"t":"s","v":"-"},{"t":"s","v":"+"},{"t":"s","v":"compile-case-clauses"},{"t":"s","v":"rest-clauses"},{"t":"s","v":"end-jump"}]}},{"t":"s","v":"compile-thread"},{"t":"code","v":{"bytecode":[1,0,0,5,20,2,0,52,1,0,1,33,14,0,20,3,0,20,4,0,1,5,0,49,2,32,79,0,20,2,0,52,7,0,1,1,8,0,52,6,0,2,33,24,0,20,9,0,20,4,0,20,2,0,52,10,0,1,20,11,0,20,12,0,49,4,32,38,0,20,2,0,52,10,0,1,17,4,20,2,0,52,13,0,1,17,5,20,14,0,20,4,0,20,15,0,20,16,0,20,11,0,20,12,0,49,5,50],"constants":[{"t":"s","v":"Compile (-> val (f1 a) (f2 b)) by desugaring to nested calls."},{"t":"s","v":"empty?"},{"t":"s","v":"args"},{"t":"s","v":"emit-op"},{"t":"s","v":"em"},{"t":"n","v":2},{"t":"s","v":"="},{"t":"s","v":"len"},{"t":"n","v":1},{"t":"s","v":"compile-expr"},{"t":"s","v":"first"},{"t":"s","v":"scope"},{"t":"s","v":"tail?"},{"t":"s","v":"rest"},{"t":"s","v":"compile-thread-step"},{"t":"s","v":"val-expr"},{"t":"s","v":"forms"}]}},{"t":"s","v":"compile-thread-step"},{"t":"code","v":{"bytecode":[20,1,0,52,0,0,1,33,20,0,20,2,0,20,3,0,20,4,0,20,5,0,20,6,0,49,4,32,151,0,20,1,0,52,7,0,1,17,5,20,1,0,52,8,0,1,17,6,20,6,0,6,33,8,0,5,20,9,0,52,0,0,1,17,7,20,11,0,52,10,0,1,33,28,0,20,11,0,52,7,0,1,20,4,0,52,13,0,2,20,11,0,52,8,0,1,52,12,0,2,32,10,0,20,11,0,20,4,0,52,13,0,2,17,8,20,9,0,52,0,0,1,33,20,0,20,2,0,20,3,0,20,14,0,20,5,0,20,15,0,49,4,32,36,0,20,2,0,20,3,0,20,14,0,20,5,0,4,48,4,5,20,16,0,20,3,0,20,14,0,20,9,0,20,5,0,20,6,0,49,5,50],"constants":[{"t":"s","v":"empty?"},{"t":"s","v":"forms"},{"t":"s","v":"compile-expr"},{"t":"s","v":"em"},{"t":"s","v":"val-expr"},{"t":"s","v":"scope"},{"t":"s","v":"tail?"},{"t":"s","v":"first"},{"t":"s","v":"rest"},{"t":"s","v":"rest-forms"},{"t":"s","v":"list?"},{"t":"s","v":"form"},{"t":"s","v":"concat"},{"t":"s","v":"list"},{"t":"s","v":"call-expr"},{"t":"s","v":"is-tail"},{"t":"s","v":"compile-thread-step"}]}},{"t":"s","v":"compile-defcomp"},{"t":"code","v":{"bytecode":[1,0,0,5,20,1,0,20,3,0,1,4,0,52,2,0,2,1,5,0,48,2,17,3,20,6,0,20,3,0,1,7,0,48,2,5,20,8,0,20,3,0,20,9,0,48,2,5,20,10,0,20,3,0,1,14,0,52,13,0,1,52,12,0,1,20,15,0,52,11,0,2,48,2,5,20,6,0,20,3,0,1,16,0,48,2,5,20,17,0,20,3,0,1,18,0,49,2,50],"constants":[{"t":"s","v":"Compile defcomp/defisland — delegates to runtime via GLOBAL_GET + CALL."},{"t":"s","v":"pool-add"},{"t":"s","v":"get"},{"t":"s","v":"em"},{"t":"s","v":"pool"},{"t":"s","v":"eval-defcomp"},{"t":"s","v":"emit-op"},{"t":"n","v":20},{"t":"s","v":"emit-u16"},{"t":"s","v":"name-idx"},{"t":"s","v":"emit-const"},{"t":"s","v":"concat"},{"t":"s","v":"list"},{"t":"s","v":"make-symbol"},{"t":"s","v":"defcomp"},{"t":"s","v":"args"},{"t":"n","v":48},{"t":"s","v":"emit-byte"},{"t":"n","v":1}]}},{"t":"s","v":"compile-defmacro"},{"t":"code","v":{"bytecode":[1,0,0,5,20,1,0,20,3,0,1,4,0,52,2,0,2,1,5,0,48,2,17,3,20,6,0,20,3,0,1,7,0,48,2,5,20,8,0,20,3,0,20,9,0,48,2,5,20,10,0,20,3,0,1,14,0,52,13,0,1,52,12,0,1,20,15,0,52,11,0,2,48,2,5,20,6,0,20,3,0,1,16,0,48,2,5,20,17,0,20,3,0,1,18,0,49,2,50],"constants":[{"t":"s","v":"Compile defmacro — delegates to runtime via GLOBAL_GET + CALL."},{"t":"s","v":"pool-add"},{"t":"s","v":"get"},{"t":"s","v":"em"},{"t":"s","v":"pool"},{"t":"s","v":"eval-defmacro"},{"t":"s","v":"emit-op"},{"t":"n","v":20},{"t":"s","v":"emit-u16"},{"t":"s","v":"name-idx"},{"t":"s","v":"emit-const"},{"t":"s","v":"concat"},{"t":"s","v":"list"},{"t":"s","v":"make-symbol"},{"t":"s","v":"defmacro"},{"t":"s","v":"args"},{"t":"n","v":48},{"t":"s","v":"emit-byte"},{"t":"n","v":1}]}},{"t":"s","v":"compile-quasiquote"},{"t":"code","v":{"bytecode":[1,0,0,5,20,1,0,20,2,0,20,3,0,20,4,0,49,3,50],"constants":[{"t":"s","v":"Compile quasiquote inline — walks the template at compile time,\n emitting code that builds the structure at runtime. Unquoted\n expressions are compiled normally (resolving locals/upvalues),\n avoiding the qq-expand-runtime env-lookup limitation."},{"t":"s","v":"compile-qq-expr"},{"t":"s","v":"em"},{"t":"s","v":"expr"},{"t":"s","v":"scope"}]}},{"t":"s","v":"compile-qq-expr"},{"t":"code","v":{"bytecode":[1,0,0,5,20,4,0,52,3,0,1,1,5,0,52,2,0,2,52,1,0,1,33,14,0,20,6,0,20,7,0,20,4,0,49,2,32,121,0,20,4,0,52,8,0,1,33,26,0,20,9,0,20,7,0,1,10,0,48,2,5,20,11,0,20,7,0,1,12,0,49,2,32,85,0,20,4,0,52,13,0,1,17,3,20,14,0,52,3,0,1,1,15,0,52,2,0,2,6,33,16,0,5,20,16,0,20,14,0,48,1,1,17,0,52,2,0,2,33,25,0,20,18,0,20,7,0,20,4,0,1,20,0,52,19,0,2,20,21,0,4,49,4,32,14,0,20,22,0,20,7,0,20,4,0,20,21,0,49,3,50],"constants":[{"t":"s","v":"Compile a quasiquote sub-expression."},{"t":"s","v":"not"},{"t":"s","v":"="},{"t":"s","v":"type-of"},{"t":"s","v":"expr"},{"t":"s","v":"list"},{"t":"s","v":"emit-const"},{"t":"s","v":"em"},{"t":"s","v":"empty?"},{"t":"s","v":"emit-op"},{"t":"n","v":64},{"t":"s","v":"emit-u16"},{"t":"n","v":0},{"t":"s","v":"first"},{"t":"s","v":"head"},{"t":"s","v":"symbol"},{"t":"s","v":"symbol-name"},{"t":"s","v":"unquote"},{"t":"s","v":"compile-expr"},{"t":"s","v":"nth"},{"t":"n","v":1},{"t":"s","v":"scope"},{"t":"s","v":"compile-qq-list"}]}},{"t":"s","v":"compile-qq-list"},{"t":"code","v":{"bytecode":[1,0,0,5,51,2,0,20,3,0,52,1,0,2,17,3,20,5,0,52,4,0,1,33,41,0,51,7,0,20,3,0,52,6,0,2,5,20,8,0,20,9,0,1,10,0,48,2,5,20,11,0,20,9,0,20,3,0,52,12,0,1,49,2,32,148,0,1,13,0,17,4,1,13,0,17,5,51,14,0,20,3,0,52,6,0,2,5,20,16,0,1,13,0,52,15,0,2,33,40,0,20,8,0,20,9,0,1,10,0,48,2,5,20,11,0,20,9,0,20,16,0,48,2,5,20,18,0,1,19,0,52,17,0,2,21,18,0,32,1,0,2,5,20,18,0,1,19,0,52,15,0,2,33,58,0,20,20,0,20,9,0,1,22,0,52,21,0,2,1,23,0,48,2,17,6,20,8,0,20,9,0,1,24,0,48,2,5,20,11,0,20,9,0,20,25,0,48,2,5,20,26,0,20,9,0,20,18,0,49,2,32,1,0,2,50],"constants":[{"t":"s","v":"Compile a quasiquote list. Handles splice-unquote by building\n segments and concatenating them."},{"t":"s","v":"some"},{"t":"code","v":{"bytecode":[20,2,0,52,1,0,1,1,3,0,52,0,0,2,6,33,62,0,5,20,2,0,52,5,0,1,1,6,0,52,4,0,2,6,33,43,0,5,20,2,0,52,7,0,1,52,1,0,1,1,8,0,52,0,0,2,6,33,20,0,5,20,9,0,20,2,0,52,7,0,1,48,1,1,10,0,52,0,0,2,50],"constants":[{"t":"s","v":"="},{"t":"s","v":"type-of"},{"t":"s","v":"item"},{"t":"s","v":"list"},{"t":"s","v":">="},{"t":"s","v":"len"},{"t":"n","v":2},{"t":"s","v":"first"},{"t":"s","v":"symbol"},{"t":"s","v":"symbol-name"},{"t":"s","v":"splice-unquote"}]}},{"t":"s","v":"items"},{"t":"s","v":"not"},{"t":"s","v":"has-splice"},{"t":"s","v":"for-each"},{"t":"code","v":{"bytecode":[20,0,0,20,1,0,20,2,0,20,3,0,49,3,50],"constants":[{"t":"s","v":"compile-qq-expr"},{"t":"s","v":"em"},{"t":"s","v":"item"},{"t":"s","v":"scope"}]}},{"t":"s","v":"emit-op"},{"t":"s","v":"em"},{"t":"n","v":64},{"t":"s","v":"emit-u16"},{"t":"s","v":"len"},{"t":"n","v":0},{"t":"code","v":{"bytecode":[20,2,0,52,1,0,1,1,3,0,52,0,0,2,6,33,62,0,5,20,2,0,52,5,0,1,1,6,0,52,4,0,2,6,33,43,0,5,20,2,0,52,7,0,1,52,1,0,1,1,8,0,52,0,0,2,6,33,20,0,5,20,9,0,20,2,0,52,7,0,1,48,1,1,10,0,52,0,0,2,33,101,0,20,12,0,1,13,0,52,11,0,2,33,47,0,20,14,0,20,15,0,1,16,0,48,2,5,20,17,0,20,15,0,20,12,0,48,2,5,20,19,0,1,20,0,52,18,0,2,21,19,0,5,1,13,0,21,12,0,32,1,0,2,5,20,21,0,20,15,0,20,2,0,1,20,0,52,22,0,2,20,23,0,4,48,4,5,20,19,0,1,20,0,52,18,0,2,21,19,0,32,28,0,20,24,0,20,15,0,20,2,0,20,23,0,48,3,5,20,12,0,1,20,0,52,18,0,2,21,12,0,50],"constants":[{"t":"s","v":"="},{"t":"s","v":"type-of"},{"t":"s","v":"item"},{"t":"s","v":"list"},{"t":"s","v":">="},{"t":"s","v":"len"},{"t":"n","v":2},{"t":"s","v":"first"},{"t":"s","v":"symbol"},{"t":"s","v":"symbol-name"},{"t":"s","v":"splice-unquote"},{"t":"s","v":">"},{"t":"s","v":"pending"},{"t":"n","v":0},{"t":"s","v":"emit-op"},{"t":"s","v":"em"},{"t":"n","v":64},{"t":"s","v":"emit-u16"},{"t":"s","v":"+"},{"t":"s","v":"segment-count"},{"t":"n","v":1},{"t":"s","v":"compile-expr"},{"t":"s","v":"nth"},{"t":"s","v":"scope"},{"t":"s","v":"compile-qq-expr"}]}},{"t":"s","v":">"},{"t":"s","v":"pending"},{"t":"s","v":"+"},{"t":"s","v":"segment-count"},{"t":"n","v":1},{"t":"s","v":"pool-add"},{"t":"s","v":"get"},{"t":"s","v":"pool"},{"t":"s","v":"concat"},{"t":"n","v":52},{"t":"s","v":"concat-idx"},{"t":"s","v":"emit-byte"}]}},{"t":"s","v":"compile-call"},{"t":"code","v":{"bytecode":[20,2,0,52,1,0,1,1,3,0,52,0,0,2,6,33,86,0,5,20,4,0,20,2,0,48,1,17,6,20,7,0,20,8,0,20,9,0,48,2,1,10,0,52,6,0,2,1,11,0,52,0,0,2,52,5,0,1,6,33,42,0,5,20,7,0,20,8,0,20,9,0,48,2,1,10,0,52,6,0,2,1,12,0,52,0,0,2,52,5,0,1,6,33,8,0,5,20,9,0,52,13,0,1,17,5,20,14,0,33,88,0,20,4,0,20,2,0,48,1,17,6,20,16,0,52,15,0,1,17,7,20,17,0,20,18,0,1,19,0,52,6,0,2,20,9,0,48,2,17,8,51,21,0,20,16,0,52,20,0,2,5,20,22,0,20,18,0,1,23,0,48,2,5,20,24,0,20,18,0,20,25,0,48,2,5,20,26,0,20,18,0,20,27,0,49,2,32,90,0,20,28,0,20,18,0,20,2,0,20,8,0,4,48,4,5,51,21,0,20,16,0,52,20,0,2,5,20,29,0,33,30,0,20,22,0,20,18,0,1,30,0,48,2,5,20,26,0,20,18,0,20,16,0,52,15,0,1,49,2,32,27,0,20,22,0,20,18,0,1,31,0,48,2,5,20,26,0,20,18,0,20,16,0,52,15,0,1,49,2,50],"constants":[{"t":"s","v":"="},{"t":"s","v":"type-of"},{"t":"s","v":"head"},{"t":"s","v":"symbol"},{"t":"s","v":"symbol-name"},{"t":"s","v":"not"},{"t":"s","v":"get"},{"t":"s","v":"scope-resolve"},{"t":"s","v":"scope"},{"t":"s","v":"name"},{"t":"s","v":"type"},{"t":"s","v":"local"},{"t":"s","v":"upvalue"},{"t":"s","v":"primitive?"},{"t":"s","v":"is-prim"},{"t":"s","v":"len"},{"t":"s","v":"args"},{"t":"s","v":"pool-add"},{"t":"s","v":"em"},{"t":"s","v":"pool"},{"t":"s","v":"for-each"},{"t":"code","v":{"bytecode":[20,0,0,20,1,0,20,2,0,20,3,0,4,49,4,50],"constants":[{"t":"s","v":"compile-expr"},{"t":"s","v":"em"},{"t":"s","v":"a"},{"t":"s","v":"scope"}]}},{"t":"s","v":"emit-op"},{"t":"n","v":52},{"t":"s","v":"emit-u16"},{"t":"s","v":"name-idx"},{"t":"s","v":"emit-byte"},{"t":"s","v":"argc"},{"t":"s","v":"compile-expr"},{"t":"s","v":"tail?"},{"t":"n","v":49},{"t":"n","v":48}]}},{"t":"s","v":"compile"},{"t":"code","v":{"bytecode":[1,0,0,5,20,1,0,48,0,17,1,20,2,0,2,48,1,17,2,20,3,0,20,4,0,20,5,0,20,6,0,4,48,4,5,20,7,0,20,4,0,1,8,0,48,2,5,1,9,0,20,4,0,1,11,0,52,10,0,2,1,12,0,52,10,0,2,1,13,0,20,4,0,1,13,0,52,10,0,2,65,2,0,50],"constants":[{"t":"s","v":"Compile a single SX expression to a bytecode module."},{"t":"s","v":"make-emitter"},{"t":"s","v":"make-scope"},{"t":"s","v":"compile-expr"},{"t":"s","v":"em"},{"t":"s","v":"expr"},{"t":"s","v":"scope"},{"t":"s","v":"emit-op"},{"t":"n","v":50},{"t":"s","v":"constants"},{"t":"s","v":"get"},{"t":"s","v":"pool"},{"t":"s","v":"entries"},{"t":"s","v":"bytecode"}]}},{"t":"s","v":"compile-module"},{"t":"code","v":{"bytecode":[1,0,0,5,20,1,0,48,0,17,1,20,2,0,2,48,1,17,2,51,4,0,20,6,0,52,5,0,1,52,3,0,2,5,20,7,0,20,8,0,20,6,0,52,9,0,1,20,10,0,4,48,4,5,20,11,0,20,8,0,1,12,0,48,2,5,1,13,0,20,8,0,1,15,0,52,14,0,2,1,16,0,52,14,0,2,1,17,0,20,8,0,1,17,0,52,14,0,2,65,2,0,50],"constants":[{"t":"s","v":"Compile a list of top-level expressions to a bytecode module."},{"t":"s","v":"make-emitter"},{"t":"s","v":"make-scope"},{"t":"s","v":"for-each"},{"t":"code","v":{"bytecode":[20,0,0,20,1,0,20,2,0,20,3,0,4,48,4,5,20,4,0,20,1,0,1,5,0,49,2,50],"constants":[{"t":"s","v":"compile-expr"},{"t":"s","v":"em"},{"t":"s","v":"expr"},{"t":"s","v":"scope"},{"t":"s","v":"emit-op"},{"t":"n","v":5}]}},{"t":"s","v":"init"},{"t":"s","v":"exprs"},{"t":"s","v":"compile-expr"},{"t":"s","v":"em"},{"t":"s","v":"last"},{"t":"s","v":"scope"},{"t":"s","v":"emit-op"},{"t":"n","v":50},{"t":"s","v":"constants"},{"t":"s","v":"get"},{"t":"s","v":"pool"},{"t":"s","v":"entries"},{"t":"s","v":"bytecode"}]}}]}} |