{ "name": "boot/seed_bootstrap.cm", "functions": [ { "disruption_pc": 0, "nr_slots": 24, "nr_close_slots": 0, "instructions": [ [ "get", 3, 1, 1, 16, 7 ], [ "load_dynamic", 4, 3, 1, 16, 17 ], [ "jump_false", 4, "if_else_0", 16, 17 ], [ "get", 5, 1, 1, 17, 12 ], [ "load_dynamic", 6, 5, 1, 17, 22 ], [ "return", 6, 17, 22 ], "_nop_ur_1", "if_else_0", "if_end_1", [ "access", 7, "js_", 18, 30 ], [ "access", 8, "/", 18, 52 ], [ "access", 9, "_", 18, 57 ], [ "access", 11, { "name": "replace", "kind": "name", "make": "intrinsic" }, 18, 38 ], [ "frame", 12, 11, 3, 18, 38 ], [ "null", 13, 18, 38 ], [ "setarg", 12, 0, 13, 18, 38 ], [ "setarg", 12, 1, 1, 18, 38 ], [ "setarg", 12, 2, 8, 18, 38 ], [ "setarg", 12, 3, 9, 18, 38 ], [ "invoke", 12, 10, 18, 38 ], [ "add", 14, 7, 10, 18, 38 ], [ "access", 15, "_use", 18, 64 ], [ "add", 16, 14, 15, 18, 64 ], [ "get", 18, 12, 1, 18, 16 ], [ "frame", 19, 18, 1, 18, 16 ], [ "null", 20, 18, 16 ], [ "setarg", 19, 0, 20, 18, 16 ], [ "setarg", 19, 1, 16, 18, 16 ], [ "invoke", 19, 17, 18, 16 ], [ "move", 2, 17, 18, 16 ], [ "jump_false", 2, "if_else_2", 19, 7 ], [ "get", 21, 1, 1, 20, 5 ], [ "store_dynamic", 21, 2, 1, 20, 15 ], [ "return", 2, 21, 12 ], "_nop_ur_2", "if_else_2", "if_end_3", [ "null", 22, 23, 10 ], [ "return", 22, 23, 10 ], "_nop_ur_3", "_nop_ur_4" ], "name": "use_basic", "filename": "boot/seed_bootstrap.cm", "nr_args": 1 }, { "disruption_pc": 0, "nr_slots": 48, "nr_close_slots": 0, "instructions": [ [ "access", 4, { "name": "core_path", "kind": "name", "make": "intrinsic" }, 28, 20 ], [ "access", 5, "/boot/", 28, 32 ], [ "add", 6, 4, 5, 28, 32 ], [ "add", 7, 6, 1, 28, 43 ], [ "access", 8, ".cm.mcode", 28, 50 ], [ "add", 9, 7, 8, 28, 50 ], [ "move", 2, 9, 28, 50 ], [ "null", 3, 29, 20 ], [ "get", 11, 3, 1, 30, 8 ], [ "is_proxy", 12, 11, 30, 8 ], [ "jump_false", 12, "record_path_6", 30, 8 ], [ "null", 13, 30, 8 ], [ "access", 14, "is_file", 30, 8 ], [ "array", 15, 0, 30, 8 ], [ "push", 15, 2, 30, 8 ], [ "frame", 16, 11, 2, 30, 8 ], [ "setarg", 16, 0, 13, 30, 8 ], [ "setarg", 16, 1, 14, 30, 8 ], [ "setarg", 16, 2, 15, 30, 8 ], [ "invoke", 16, 10, 30, 8 ], [ "jump", "call_done_7", 30, 8 ], "record_path_6", [ "load_field", 17, 11, "is_file", 30, 8 ], [ "frame", 18, 17, 1, 30, 8 ], [ "setarg", 18, 0, 11, 30, 8 ], [ "setarg", 18, 1, 2, 30, 8 ], [ "invoke", 18, 10, 30, 8 ], "call_done_7", "_nop_bl_1", [ "jump_true", 10, "if_else_4", 30, 8 ], [ "access", 20, "seed: missing boot mcode: ", 31, 11 ], [ "add", 21, 20, 2, 31, 42 ], [ "access", 22, "\n", 31, 55 ], [ "add", 23, 21, 22, 31, 55 ], [ "access", 25, { "name": "print", "kind": "name", "make": "intrinsic" }, 31, 5 ], [ "frame", 26, 25, 1, 31, 5 ], [ "null", 27, 31, 5 ], [ "setarg", 26, 0, 27, 31, 5 ], [ "setarg", 26, 1, 23, 31, 5 ], [ "invoke", 26, 24, 31, 5 ], [ "disrupt", 32, 5 ], [ "jump", "if_end_5", 32, 5 ], "if_else_4", "if_end_5", [ "get", 29, 3, 1, 34, 21 ], [ "is_proxy", 30, 29, 34, 21 ], [ "jump_false", 30, "record_path_8", 34, 21 ], [ "null", 31, 34, 21 ], [ "access", 32, "slurp", 34, 21 ], [ "array", 33, 0, 34, 21 ], [ "push", 33, 2, 34, 21 ], [ "frame", 34, 29, 2, 34, 21 ], [ "setarg", 34, 0, 31, 34, 21 ], [ "setarg", 34, 1, 32, 34, 21 ], [ "setarg", 34, 2, 33, 34, 21 ], [ "invoke", 34, 28, 34, 21 ], [ "jump", "call_done_9", 34, 21 ], "record_path_8", [ "load_field", 35, 29, "slurp", 34, 21 ], [ "frame", 36, 35, 1, 34, 21 ], [ "setarg", 36, 0, 29, 34, 21 ], [ "setarg", 36, 1, 2, 34, 21 ], [ "invoke", 36, 28, 34, 21 ], "call_done_9", [ "access", 38, { "name": "text", "kind": "name", "make": "intrinsic" }, 34, 16 ], [ "frame", 39, 38, 1, 34, 16 ], [ "null", 40, 34, 16 ], [ "setarg", 39, 0, 40, 34, 16 ], [ "setarg", 39, 1, 28, 34, 16 ], [ "invoke", 39, 37, 34, 16 ], [ "move", 3, 37, 34, 16 ], [ "record", 41, 1 ], [ "get", 42, 16, 1, 35, 50 ], [ "store_field", 41, 42, "use", 35, 50 ], [ "access", 44, { "name": "mach_eval_mcode", "kind": "name", "make": "intrinsic" }, 35, 10 ], [ "frame", 45, 44, 3, 35, 10 ], [ "null", 46, 35, 10 ], [ "setarg", 45, 0, 46, 35, 10 ], [ "setarg", 45, 1, 1, 35, 10 ], [ "setarg", 45, 2, 3, 35, 10 ], [ "setarg", 45, 3, 41, 35, 10 ], [ "tail_invoke", 45, 43, 35, 10 ], [ "return", 43, 35, 10 ], "_nop_ur_1", "_nop_ur_2" ], "name": "boot_load", "filename": "boot/seed_bootstrap.cm", "nr_args": 1 }, { "disruption_pc": 0, "nr_slots": 81, "nr_close_slots": 0, "instructions": [ [ "get", 9, 5, 1, 51, 20 ], [ "frame", 10, 9, 2, 51, 20 ], [ "null", 11, 51, 20 ], [ "setarg", 10, 0, 11, 51, 20 ], [ "setarg", 10, 1, 1, 51, 20 ], [ "setarg", 10, 2, 2, 51, 20 ], [ "invoke", 10, 8, 51, 20 ], [ "move", 3, 8, 51, 20 ], [ "load_field", 12, 3, "tokens", 52, 23 ], [ "get", 13, 5, 1, 52, 57 ], [ "get", 15, 17, 1, 52, 13 ], [ "frame", 16, 15, 4, 52, 13 ], [ "null", 17, 52, 13 ], [ "setarg", 16, 0, 17, 52, 13 ], [ "setarg", 16, 1, 12, 52, 13 ], [ "setarg", 16, 2, 1, 52, 13 ], [ "setarg", 16, 3, 2, 52, 13 ], [ "setarg", 16, 4, 13, 52, 13 ], [ "invoke", 16, 14, 52, 13 ], [ "move", 5, 14, 52, 13 ], [ "access", 7, 0, 53, 12 ], [ "null", 6, 54, 11 ], [ "load_field", 18, 5, "errors", 55, 20 ], [ "null", 19, 55, 34 ], [ "is_identical", 20, 18, 19, 55, 34 ], [ "jump_true", 20, "ne_nid_12", 55, 34 ], [ "jump", "ne_ni_13", 55, 34 ], "ne_nid_12", [ "false", 20, 55, 34 ], [ "jump", "ne_done_11", 55, 34 ], "ne_ni_13", [ "is_int", 21, 18, 55, 34 ], [ "jump_false", 21, "ne_nn_14", 55, 34 ], "_nop_tc_1", [ "jump", "ne_nn_14", 55, 34 ], [ "ne_int", 20, 18, 19, 55, 34 ], [ "jump", "ne_done_11", 55, 34 ], "ne_nn_14", [ "is_num", 21, 18, 55, 34 ], [ "jump_false", 21, "ne_nt_15", 55, 34 ], "_nop_tc_2", [ "jump", "ne_nt_15", 55, 34 ], [ "ne_float", 20, 18, 19, 55, 34 ], [ "jump", "ne_done_11", 55, 34 ], "ne_nt_15", [ "is_text", 21, 18, 55, 34 ], [ "jump_false", 21, "ne_nnl_16", 55, 34 ], "_nop_tc_3", [ "jump", "ne_nnl_16", 55, 34 ], [ "ne_text", 20, 18, 19, 55, 34 ], [ "jump", "ne_done_11", 55, 34 ], "ne_nnl_16", [ "is_null", 21, 18, 55, 34 ], [ "jump_false", 21, "ne_nb_17", 55, 34 ], "_nop_tc_4", "_nop_tc_5", [ "false", 20, 55, 34 ], [ "jump", "ne_done_11", 55, 34 ], "ne_nb_17", [ "is_bool", 21, 18, 55, 34 ], [ "jump_false", 21, "ne_mis_18", 55, 34 ], "_nop_tc_6", [ "jump", "ne_mis_18", 55, 34 ], [ "ne_bool", 20, 18, 19, 55, 34 ], [ "jump", "ne_done_11", 55, 34 ], "ne_mis_18", [ "true", 20, 55, 34 ], "ne_done_11", [ "move", 23, 20, 55, 34 ], [ "jump_false", 23, "and_end_10", 55, 34 ], [ "load_field", 24, 5, "errors", 55, 49 ], [ "length", 25, 24, 55, 49 ], [ "access", 26, 0, 55, 63 ], "_nop_tc_7", "_nop_tc_8", "_nop_tc_9", [ "jump", "rel_ni_19", 55, 63 ], [ "gt_int", 27, 25, 26, 55, 63 ], [ "jump", "rel_done_21", 55, 63 ], "rel_ni_19", "_nop_tc_10", "_nop_tc_11", "_nop_tc_12", "_nop_tc_13", [ "gt_float", 27, 25, 26, 55, 63 ], [ "jump", "rel_done_21", 55, 63 ], "rel_nn_20", "_nop_tc_14", [ "jump", "rel_err_22", 55, 63 ], "_nop_tc_15", [ "jump", "rel_err_22", 55, 63 ], [ "gt_text", 27, 25, 26, 55, 63 ], [ "jump", "rel_done_21", 55, 63 ], "rel_err_22", [ "disrupt", 55, 63 ], "rel_done_21", [ "move", 23, 27, 55, 63 ], "and_end_10", [ "move", 4, 23, 55, 63 ], [ "jump_false", 4, "if_else_23", 56, 7 ], "while_start_25", [ "load_field", 30, 5, "errors", 57, 24 ], [ "length", 31, 30, 57, 24 ], [ "is_int", 33, 7, 57, 24 ], [ "jump_false", 33, "rel_ni_27", 57, 24 ], "_nop_tc_16", "_nop_tc_17", [ "lt_int", 32, 7, 31, 57, 24 ], [ "jump", "rel_done_29", 57, 24 ], "rel_ni_27", [ "is_num", 33, 7, 57, 24 ], [ "jump_false", 33, "rel_nn_28", 57, 24 ], "_nop_tc_18", "_nop_tc_19", [ "lt_float", 32, 7, 31, 57, 24 ], [ "jump", "rel_done_29", 57, 24 ], "rel_nn_28", [ "is_text", 33, 7, 57, 24 ], [ "jump_false", 33, "rel_err_30", 57, 24 ], "_nop_tc_20", [ "jump", "rel_err_30", 57, 24 ], [ "lt_text", 32, 7, 31, 57, 24 ], [ "jump", "rel_done_29", 57, 24 ], "rel_err_30", [ "disrupt", 57, 24 ], "rel_done_29", [ "jump_false", 32, "while_end_26", 57, 24 ], [ "load_field", 35, 5, "errors", 58, 11 ], [ "load_dynamic", 36, 35, 7, 58, 22 ], [ "move", 6, 36, 58, 22 ], [ "load_field", 37, 6, "line", 59, 11 ], [ "null", 38, 59, 21 ], [ "is_identical", 39, 37, 38, 59, 21 ], [ "jump_true", 39, "ne_nid_34", 59, 21 ], [ "jump", "ne_ni_35", 59, 21 ], "ne_nid_34", [ "false", 39, 59, 21 ], [ "jump", "ne_done_33", 59, 21 ], "ne_ni_35", [ "is_int", 40, 37, 59, 21 ], [ "jump_false", 40, "ne_nn_36", 59, 21 ], "_nop_tc_21", [ "jump", "ne_nn_36", 59, 21 ], [ "ne_int", 39, 37, 38, 59, 21 ], [ "jump", "ne_done_33", 59, 21 ], "ne_nn_36", [ "is_num", 40, 37, 59, 21 ], [ "jump_false", 40, "ne_nt_37", 59, 21 ], "_nop_tc_22", [ "jump", "ne_nt_37", 59, 21 ], [ "ne_float", 39, 37, 38, 59, 21 ], [ "jump", "ne_done_33", 59, 21 ], "ne_nt_37", [ "is_text", 40, 37, 59, 21 ], [ "jump_false", 40, "ne_nnl_38", 59, 21 ], "_nop_tc_23", [ "jump", "ne_nnl_38", 59, 21 ], [ "ne_text", 39, 37, 38, 59, 21 ], [ "jump", "ne_done_33", 59, 21 ], "ne_nnl_38", [ "is_null", 40, 37, 59, 21 ], [ "jump_false", 40, "ne_nb_39", 59, 21 ], "_nop_tc_24", "_nop_tc_25", [ "false", 39, 59, 21 ], [ "jump", "ne_done_33", 59, 21 ], "ne_nb_39", [ "is_bool", 40, 37, 59, 21 ], [ "jump_false", 40, "ne_mis_40", 59, 21 ], "_nop_tc_26", [ "jump", "ne_mis_40", 59, 21 ], [ "ne_bool", 39, 37, 38, 59, 21 ], [ "jump", "ne_done_33", 59, 21 ], "ne_mis_40", [ "true", 39, 59, 21 ], "ne_done_33", [ "jump_false", 39, "if_else_31", 59, 21 ], [ "load_field", 42, 6, "line", 1, 6 ], [ "access", 44, { "name": "text", "kind": "name", "make": "intrinsic" }, 1, 1 ], [ "frame", 45, 44, 1, 1, 1 ], [ "null", 46, 1, 1 ], [ "setarg", 45, 0, 46, 1, 1 ], [ "setarg", 45, 1, 42, 1, 1 ], [ "invoke", 45, 43, 1, 1 ], [ "load_field", 47, 6, "column", 1, 6 ], [ "access", 49, { "name": "text", "kind": "name", "make": "intrinsic" }, 1, 1 ], [ "frame", 50, 49, 1, 1, 1 ], [ "null", 51, 1, 1 ], [ "setarg", 50, 0, 51, 1, 1 ], [ "setarg", 50, 1, 47, 1, 1 ], [ "invoke", 50, 48, 1, 1 ], [ "load_field", 52, 6, "message", 1, 1 ], [ "array", 53, 0, 1, 1 ], [ "push", 53, 2, 1, 1 ], [ "push", 53, 43, 1, 1 ], [ "push", 53, 48, 1, 1 ], [ "push", 53, 52, 1, 1 ], [ "access", 54, { "name": "format", "kind": "name", "make": "intrinsic" }, 1, 1 ], [ "access", 55, "{0}:{1}:{2}: error: {3}", 1, 1 ], [ "frame", 57, 54, 2, 1, 1 ], [ "null", 58, 1, 1 ], [ "setarg", 57, 0, 58, 1, 1 ], [ "setarg", 57, 1, 55, 1, 1 ], [ "setarg", 57, 2, 53, 1, 1 ], [ "invoke", 57, 56, 1, 1 ], [ "access", 60, { "name": "print", "kind": "name", "make": "intrinsic" }, 60, 9 ], [ "frame", 61, 60, 1, 60, 9 ], [ "null", 62, 60, 9 ], [ "setarg", 61, 0, 62, 60, 9 ], [ "setarg", 61, 1, 56, 60, 9 ], [ "invoke", 61, 59, 60, 9 ], [ "jump", "if_end_32", 60, 9 ], "if_else_31", [ "load_field", 63, 6, "message", 1, 1 ], [ "array", 64, 0, 1, 1 ], [ "push", 64, 2, 1, 1 ], [ "push", 64, 63, 1, 1 ], [ "access", 65, { "name": "format", "kind": "name", "make": "intrinsic" }, 1, 1 ], [ "access", 66, "{0}: error: {1}", 1, 1 ], [ "frame", 68, 65, 2, 1, 1 ], [ "null", 69, 1, 1 ], [ "setarg", 68, 0, 69, 1, 1 ], [ "setarg", 68, 1, 66, 1, 1 ], [ "setarg", 68, 2, 64, 1, 1 ], [ "invoke", 68, 67, 1, 1 ], [ "access", 71, { "name": "print", "kind": "name", "make": "intrinsic" }, 62, 9 ], [ "frame", 72, 71, 1, 62, 9 ], [ "null", 73, 62, 9 ], [ "setarg", 72, 0, 73, 62, 9 ], [ "setarg", 72, 1, 67, 62, 9 ], [ "invoke", 72, 70, 62, 9 ], "if_end_32", [ "access", 74, 1, 64, 17 ], [ "add", 75, 7, 74, 64, 17 ], [ "move", 7, 75, 64, 17 ], [ "jump", "while_start_25", 64, 17 ], "while_end_26", [ "disrupt", 66, 5 ], [ "jump", "if_end_24", 66, 5 ], "if_else_23", "if_end_24", [ "get", 77, 2, 1, 68, 10 ], [ "frame", 78, 77, 1, 68, 10 ], [ "null", 79, 68, 10 ], [ "setarg", 78, 0, 79, 68, 10 ], [ "setarg", 78, 1, 5, 68, 10 ], [ "tail_invoke", 78, 76, 68, 10 ], [ "return", 76, 68, 10 ], "_nop_ur_1", "_nop_ur_2" ], "name": "analyze", "filename": "boot/seed_bootstrap.cm", "nr_args": 2 }, { "disruption_pc": 0, "nr_slots": 29, "nr_close_slots": 0, "instructions": [ [ "get", 8, 10, 1, 72, 18 ], [ "frame", 9, 8, 1, 72, 18 ], [ "null", 10, 72, 18 ], [ "setarg", 9, 0, 10, 72, 18 ], [ "setarg", 9, 1, 2, 72, 18 ], [ "invoke", 9, 7, 72, 18 ], [ "move", 4, 7, 72, 18 ], [ "get", 12, 13, 1, 73, 19 ], [ "frame", 13, 12, 1, 73, 19 ], [ "null", 14, 73, 19 ], [ "setarg", 13, 0, 14, 73, 19 ], [ "setarg", 13, 1, 4, 73, 19 ], [ "invoke", 13, 11, 73, 19 ], [ "move", 6, 11, 73, 19 ], [ "access", 16, { "name": "json", "kind": "name", "make": "intrinsic" }, 74, 20 ], [ "is_proxy", 17, 16, 74, 20 ], [ "jump_false", 17, "record_path_41", 74, 20 ], [ "null", 18, 74, 20 ], [ "access", 19, "encode", 74, 20 ], [ "array", 20, 0, 74, 20 ], [ "push", 20, 6, 74, 20 ], [ "frame", 21, 16, 2, 74, 20 ], [ "setarg", 21, 0, 18, 74, 20 ], [ "setarg", 21, 1, 19, 74, 20 ], [ "setarg", 21, 2, 20, 74, 20 ], [ "invoke", 21, 15, 74, 20 ], [ "jump", "call_done_42", 74, 20 ], "record_path_41", [ "load_field", 22, 16, "encode", 74, 20 ], [ "frame", 23, 22, 1, 74, 20 ], [ "setarg", 23, 0, 16, 74, 20 ], [ "setarg", 23, 1, 6, 74, 20 ], [ "invoke", 23, 15, 74, 20 ], "call_done_42", [ "move", 5, 15, 74, 20 ], [ "access", 25, { "name": "mach_eval_mcode", "kind": "name", "make": "intrinsic" }, 75, 10 ], [ "frame", 26, 25, 3, 75, 10 ], [ "null", 27, 75, 10 ], [ "setarg", 26, 0, 27, 75, 10 ], [ "setarg", 26, 1, 1, 75, 10 ], [ "setarg", 26, 2, 5, 75, 10 ], [ "setarg", 26, 3, 3, 75, 10 ], [ "tail_invoke", 26, 24, 75, 10 ], [ "return", 24, 75, 10 ], "_nop_ur_1", "_nop_ur_2" ], "name": "run_ast", "filename": "boot/seed_bootstrap.cm", "nr_args": 3 }, { "disruption_pc": 0, "nr_slots": 122, "nr_close_slots": 0, "instructions": [ [ "null", 3, 79, 16 ], [ "null", 2, 80, 19 ], [ "null", 4, 81, 16 ], [ "null", 5, 82, 13 ], [ "null", 7, 83, 20 ], [ "null", 6, 84, 20 ], [ "get", 8, 1, 1, 85, 7 ], [ "load_dynamic", 9, 8, 1, 85, 17 ], [ "jump_false", 9, "if_else_43", 85, 17 ], [ "get", 10, 1, 1, 86, 12 ], [ "load_dynamic", 11, 10, 1, 86, 22 ], [ "return", 11, 86, 22 ], "_nop_ur_1", "if_else_43", "if_end_44", [ "access", 12, "js_", 89, 26 ], [ "access", 13, "/", 89, 48 ], [ "access", 14, "_", 89, 53 ], [ "access", 16, { "name": "replace", "kind": "name", "make": "intrinsic" }, 89, 34 ], [ "frame", 17, 16, 3, 89, 34 ], [ "null", 18, 89, 34 ], [ "setarg", 17, 0, 18, 89, 34 ], [ "setarg", 17, 1, 1, 89, 34 ], [ "setarg", 17, 2, 13, 89, 34 ], [ "setarg", 17, 3, 14, 89, 34 ], [ "invoke", 17, 15, 89, 34 ], [ "add", 19, 12, 15, 89, 34 ], [ "access", 20, "_use", 89, 60 ], [ "add", 21, 19, 20, 89, 60 ], [ "get", 23, 12, 1, 89, 12 ], [ "frame", 24, 23, 1, 89, 12 ], [ "null", 25, 89, 12 ], [ "setarg", 24, 0, 25, 89, 12 ], [ "setarg", 24, 1, 21, 89, 12 ], [ "invoke", 24, 22, 89, 12 ], [ "move", 3, 22, 89, 12 ], [ "jump_false", 3, "if_else_45", 90, 7 ], [ "get", 26, 1, 1, 91, 5 ], [ "store_dynamic", 26, 3, 1, 91, 15 ], [ "return", 3, 92, 12 ], "_nop_ur_2", "if_else_45", "if_end_46", [ "access", 27, { "name": "core_path", "kind": "name", "make": "intrinsic" }, 96, 16 ], [ "access", 28, "/boot/", 96, 28 ], [ "add", 29, 27, 28, 96, 28 ], [ "add", 30, 29, 1, 96, 39 ], [ "access", 31, ".cm.mcode", 96, 46 ], [ "add", 32, 30, 31, 96, 46 ], [ "move", 7, 32, 96, 46 ], [ "get", 34, 3, 1, 97, 7 ], [ "is_proxy", 35, 34, 97, 7 ], [ "jump_false", 35, "record_path_49", 97, 7 ], [ "null", 36, 97, 7 ], [ "access", 37, "is_file", 97, 7 ], [ "array", 38, 0, 97, 7 ], [ "push", 38, 7, 97, 7 ], [ "frame", 39, 34, 2, 97, 7 ], [ "setarg", 39, 0, 36, 97, 7 ], [ "setarg", 39, 1, 37, 97, 7 ], [ "setarg", 39, 2, 38, 97, 7 ], [ "invoke", 39, 33, 97, 7 ], [ "jump", "call_done_50", 97, 7 ], "record_path_49", [ "load_field", 40, 34, "is_file", 97, 7 ], [ "frame", 41, 40, 1, 97, 7 ], [ "setarg", 41, 0, 34, 97, 7 ], [ "setarg", 41, 1, 7, 97, 7 ], [ "invoke", 41, 33, 97, 7 ], "call_done_50", [ "jump_false", 33, "if_else_47", 97, 7 ], [ "get", 43, 3, 1, 98, 23 ], [ "is_proxy", 44, 43, 98, 23 ], [ "jump_false", 44, "record_path_51", 98, 23 ], [ "null", 45, 98, 23 ], [ "access", 46, "slurp", 98, 23 ], [ "array", 47, 0, 98, 23 ], [ "push", 47, 7, 98, 23 ], [ "frame", 48, 43, 2, 98, 23 ], [ "setarg", 48, 0, 45, 98, 23 ], [ "setarg", 48, 1, 46, 98, 23 ], [ "setarg", 48, 2, 47, 98, 23 ], [ "invoke", 48, 42, 98, 23 ], [ "jump", "call_done_52", 98, 23 ], "record_path_51", [ "load_field", 49, 43, "slurp", 98, 23 ], [ "frame", 50, 49, 1, 98, 23 ], [ "setarg", 50, 0, 43, 98, 23 ], [ "setarg", 50, 1, 7, 98, 23 ], [ "invoke", 50, 42, 98, 23 ], "call_done_52", [ "access", 52, { "name": "text", "kind": "name", "make": "intrinsic" }, 98, 18 ], [ "frame", 53, 52, 1, 98, 18 ], [ "null", 54, 98, 18 ], [ "setarg", 53, 0, 54, 98, 18 ], [ "setarg", 53, 1, 42, 98, 18 ], [ "invoke", 53, 51, 98, 18 ], [ "move", 6, 51, 98, 18 ], [ "record", 55, 1 ], [ "get", 56, 8, 1, 99, 54 ], [ "store_field", 55, 56, "use", 99, 54 ], [ "access", 58, { "name": "mach_eval_mcode", "kind": "name", "make": "intrinsic" }, 99, 14 ], [ "frame", 59, 58, 3, 99, 14 ], [ "null", 60, 99, 14 ], [ "setarg", 59, 0, 60, 99, 14 ], [ "setarg", 59, 1, 1, 99, 14 ], [ "setarg", 59, 2, 6, 99, 14 ], [ "setarg", 59, 3, 55, 99, 14 ], [ "invoke", 59, 57, 99, 14 ], [ "move", 3, 57, 99, 14 ], [ "get", 61, 1, 1, 100, 5 ], [ "store_dynamic", 61, 3, 1, 100, 15 ], [ "return", 3, 101, 12 ], "_nop_ur_3", "if_else_47", "if_end_48", [ "access", 62, ".cm", 105, 22 ], [ "add", 63, 1, 62, 105, 22 ], [ "move", 2, 63, 105, 22 ], [ "get", 65, 3, 1, 106, 8 ], [ "is_proxy", 66, 65, 106, 8 ], [ "jump_false", 66, "record_path_55", 106, 8 ], [ "null", 67, 106, 8 ], [ "access", 68, "is_file", 106, 8 ], [ "array", 69, 0, 106, 8 ], [ "push", 69, 2, 106, 8 ], [ "frame", 70, 65, 2, 106, 8 ], [ "setarg", 70, 0, 67, 106, 8 ], [ "setarg", 70, 1, 68, 106, 8 ], [ "setarg", 70, 2, 69, 106, 8 ], [ "invoke", 70, 64, 106, 8 ], [ "jump", "call_done_56", 106, 8 ], "record_path_55", [ "load_field", 71, 65, "is_file", 106, 8 ], [ "frame", 72, 71, 1, 106, 8 ], [ "setarg", 72, 0, 65, 106, 8 ], [ "setarg", 72, 1, 2, 106, 8 ], [ "invoke", 72, 64, 106, 8 ], "call_done_56", "_nop_bl_1", [ "jump_true", 64, "if_else_53", 106, 8 ], [ "access", 74, { "name": "core_path", "kind": "name", "make": "intrinsic" }, 107, 17 ], [ "access", 75, "/", 107, 29 ], [ "add", 76, 74, 75, 107, 29 ], [ "add", 77, 76, 1, 107, 35 ], [ "access", 78, ".cm", 107, 42 ], [ "add", 79, 77, 78, 107, 42 ], [ "move", 2, 79, 107, 42 ], [ "jump", "if_end_54", 107, 42 ], "if_else_53", "if_end_54", [ "get", 81, 3, 1, 108, 7 ], [ "is_proxy", 82, 81, 108, 7 ], [ "jump_false", 82, "record_path_59", 108, 7 ], [ "null", 83, 108, 7 ], [ "access", 84, "is_file", 108, 7 ], [ "array", 85, 0, 108, 7 ], [ "push", 85, 2, 108, 7 ], [ "frame", 86, 81, 2, 108, 7 ], [ "setarg", 86, 0, 83, 108, 7 ], [ "setarg", 86, 1, 84, 108, 7 ], [ "setarg", 86, 2, 85, 108, 7 ], [ "invoke", 86, 80, 108, 7 ], [ "jump", "call_done_60", 108, 7 ], "record_path_59", [ "load_field", 87, 81, "is_file", 108, 7 ], [ "frame", 88, 87, 1, 108, 7 ], [ "setarg", 88, 0, 81, 108, 7 ], [ "setarg", 88, 1, 2, 108, 7 ], [ "invoke", 88, 80, 108, 7 ], "call_done_60", [ "jump_false", 80, "if_else_57", 108, 7 ], [ "get", 90, 3, 1, 109, 19 ], [ "is_proxy", 91, 90, 109, 19 ], [ "jump_false", 91, "record_path_61", 109, 19 ], [ "null", 92, 109, 19 ], [ "access", 93, "slurp", 109, 19 ], [ "array", 94, 0, 109, 19 ], [ "push", 94, 2, 109, 19 ], [ "frame", 95, 90, 2, 109, 19 ], [ "setarg", 95, 0, 92, 109, 19 ], [ "setarg", 95, 1, 93, 109, 19 ], [ "setarg", 95, 2, 94, 109, 19 ], [ "invoke", 95, 89, 109, 19 ], [ "jump", "call_done_62", 109, 19 ], "record_path_61", [ "load_field", 96, 90, "slurp", 109, 19 ], [ "frame", 97, 96, 1, 109, 19 ], [ "setarg", 97, 0, 90, 109, 19 ], [ "setarg", 97, 1, 2, 109, 19 ], [ "invoke", 97, 89, 109, 19 ], "call_done_62", [ "access", 99, { "name": "text", "kind": "name", "make": "intrinsic" }, 109, 14 ], [ "frame", 100, 99, 1, 109, 14 ], [ "null", 101, 109, 14 ], [ "setarg", 100, 0, 101, 109, 14 ], [ "setarg", 100, 1, 89, 109, 14 ], [ "invoke", 100, 98, 109, 14 ], [ "move", 4, 98, 109, 14 ], [ "get", 103, 7, 1, 110, 11 ], [ "frame", 104, 103, 2, 110, 11 ], [ "null", 105, 110, 11 ], [ "setarg", 104, 0, 105, 110, 11 ], [ "setarg", 104, 1, 4, 110, 11 ], [ "setarg", 104, 2, 2, 110, 11 ], [ "invoke", 104, 102, 110, 11 ], [ "move", 5, 102, 110, 11 ], [ "record", 106, 1 ], [ "get", 107, 8, 1, 111, 39 ], [ "store_field", 106, 107, "use", 111, 39 ], [ "get", 109, 9, 1, 111, 14 ], [ "frame", 110, 109, 3, 111, 14 ], [ "null", 111, 111, 14 ], [ "setarg", 110, 0, 111, 111, 14 ], [ "setarg", 110, 1, 1, 111, 14 ], [ "setarg", 110, 2, 5, 111, 14 ], [ "setarg", 110, 3, 106, 111, 14 ], [ "invoke", 110, 108, 111, 14 ], [ "move", 3, 108, 111, 14 ], [ "get", 112, 1, 1, 112, 5 ], [ "store_dynamic", 112, 3, 1, 112, 15 ], [ "return", 3, 113, 12 ], "_nop_ur_4", "if_else_57", "if_end_58", [ "access", 113, "seed: module not found: ", 116, 9 ], [ "add", 114, 113, 1, 116, 38 ], [ "access", 115, "\n", 116, 45 ], [ "add", 116, 114, 115, 116, 45 ], [ "access", 118, { "name": "print", "kind": "name", "make": "intrinsic" }, 116, 3 ], [ "frame", 119, 118, 1, 116, 3 ], [ "null", 120, 116, 3 ], [ "setarg", 119, 0, 120, 116, 3 ], [ "setarg", 119, 1, 116, 116, 3 ], [ "invoke", 119, 117, 116, 3 ], [ "disrupt", 117, 3 ], [ "null", 121, 117, 3 ], [ "return", 121, 117, 3 ] ], "name": "use_fn", "filename": "boot/seed_bootstrap.cm", "nr_args": 1 } ], "main": { "nr_args": 0, "nr_close_slots": 0, "nr_slots": 161, "instructions": [ [ "function", 20, 0, 0, 0 ], [ "move", 16, 20, 0, 0 ], [ "function", 21, 1, 0, 0 ], [ "move", 11, 21, 0, 0 ], [ "function", 22, 2, 0, 0 ], [ "move", 7, 22, 0, 0 ], [ "function", 23, 3, 0, 0 ], [ "move", 9, 23, 0, 0 ], [ "function", 24, 4, 0, 0 ], [ "move", 8, 24, 0, 0 ], [ "access", 25, { "name": "os", "kind": "name", "make": "intrinsic" }, 7, 21 ], [ "load_field", 26, 25, "load_internal", 7, 21 ], [ "move", 12, 26, 7, 21 ], [ "access", 27, "js_fd_use", 8, 24 ], [ "frame", 29, 12, 1, 8, 10 ], [ "null", 30, 8, 10 ], [ "setarg", 29, 0, 30, 8, 10 ], [ "setarg", 29, 1, 27, 8, 10 ], [ "invoke", 29, 28, 8, 10 ], [ "move", 3, 28, 8, 10 ], [ "record", 31, 0 ], [ "move", 1, 31, 10, 17 ], [ "access", 32, "fd", 11, 11 ], [ "store_field", 1, 3, 32, 11, 11 ], [ "access", 33, { "name": "os", "kind": "name", "make": "intrinsic" }, 12, 19 ], [ "access", 34, "os", 12, 11 ], [ "store_field", 1, 33, 34, 12, 11 ], [ "access", 35, { "name": "json", "kind": "name", "make": "intrinsic" }, 13, 21 ], [ "access", 36, "json", 13, 11 ], [ "store_field", 1, 35, 36, 13, 11 ], [ "access", 37, "tokenize", 38, 30 ], [ "frame", 39, 11, 1, 38, 20 ], [ "null", 40, 38, 20 ], [ "setarg", 39, 0, 40, 38, 20 ], [ "setarg", 39, 1, 37, 38, 20 ], [ "invoke", 39, 38, 38, 20 ], [ "move", 5, 38, 38, 20 ], [ "access", 41, "parse", 39, 27 ], [ "frame", 43, 11, 1, 39, 17 ], [ "null", 44, 39, 17 ], [ "setarg", 43, 0, 44, 39, 17 ], [ "setarg", 43, 1, 41, 39, 17 ], [ "invoke", 43, 42, 39, 17 ], [ "move", 17, 42, 39, 17 ], [ "access", 45, "fold", 40, 26 ], [ "frame", 47, 11, 1, 40, 16 ], [ "null", 48, 40, 16 ], [ "setarg", 47, 0, 48, 40, 16 ], [ "setarg", 47, 1, 45, 40, 16 ], [ "invoke", 47, 46, 40, 16 ], [ "move", 2, 46, 40, 16 ], [ "access", 49, "mcode", 41, 27 ], [ "frame", 51, 11, 1, 41, 17 ], [ "null", 52, 41, 17 ], [ "setarg", 51, 0, 52, 41, 17 ], [ "setarg", 51, 1, 49, 41, 17 ], [ "invoke", 51, 50, 41, 17 ], [ "move", 10, 50, 41, 17 ], [ "access", 53, "streamline", 42, 32 ], [ "frame", 55, 11, 1, 42, 22 ], [ "null", 56, 42, 22 ], [ "setarg", 55, 0, 56, 42, 22 ], [ "setarg", 55, 1, 53, 42, 22 ], [ "invoke", 55, 54, 42, 22 ], [ "move", 13, 54, 42, 22 ], [ "access", 57, "tokenize", 44, 11 ], [ "store_field", 1, 5, 57, 44, 11 ], [ "access", 58, "parse", 45, 11 ], [ "store_field", 1, 17, 58, 45, 11 ], [ "access", 59, "fold", 46, 11 ], [ "store_field", 1, 2, 59, 46, 11 ], [ "access", 60, "mcode", 47, 11 ], [ "store_field", 1, 10, 60, 47, 11 ], [ "access", 61, "streamline", 48, 11 ], [ "store_field", 1, 13, 61, 48, 11 ], [ "access", 62, { "name": "args", "kind": "name", "make": "intrinsic" }, 121, 15 ], [ "access", 63, 0, 121, 20 ], [ "load_index", 64, 62, 63, 121, 20 ], [ "move", 14, 64, 121, 20 ], [ "array", 65, 0, 122, 17 ], [ "move", 18, 65, 122, 17 ], [ "access", 6, 1, 123, 10 ], [ "null", 15, 124, 17 ], [ "null", 4, 125, 14 ], [ "null", 19, 126, 11 ], "_nop_bl_1", [ "jump_true", 14, "if_else_63", 128, 6 ], [ "access", 67, "seed: no program specified\n", 129, 9 ], [ "access", 69, { "name": "print", "kind": "name", "make": "intrinsic" }, 129, 3 ], [ "frame", 70, 69, 1, 129, 3 ], [ "null", 71, 129, 3 ], [ "setarg", 70, 0, 71, 129, 3 ], [ "setarg", 70, 1, 67, 129, 3 ], [ "invoke", 70, 68, 129, 3 ], [ "disrupt", 130, 3 ], [ "jump", "if_end_64", 130, 3 ], "if_else_63", "if_end_64", "while_start_65", [ "access", 72, { "name": "args", "kind": "name", "make": "intrinsic" }, 133, 20 ], [ "length", 73, 72, 133, 20 ], [ "is_int", 75, 6, 133, 20 ], [ "jump_false", 75, "rel_ni_67", 133, 20 ], "_nop_tc_1", "_nop_tc_2", [ "lt_int", 74, 6, 73, 133, 20 ], [ "jump", "rel_done_69", 133, 20 ], "rel_ni_67", [ "is_num", 75, 6, 133, 20 ], [ "jump_false", 75, "rel_nn_68", 133, 20 ], "_nop_tc_3", "_nop_tc_4", [ "lt_float", 74, 6, 73, 133, 20 ], [ "jump", "rel_done_69", 133, 20 ], "rel_nn_68", [ "is_text", 75, 6, 133, 20 ], [ "jump_false", 75, "rel_err_70", 133, 20 ], "_nop_tc_5", [ "jump", "rel_err_70", 133, 20 ], [ "lt_text", 74, 6, 73, 133, 20 ], [ "jump", "rel_done_69", 133, 20 ], "rel_err_70", [ "disrupt", 133, 20 ], "rel_done_69", [ "jump_false", 74, "while_end_66", 133, 20 ], [ "access", 77, { "name": "args", "kind": "name", "make": "intrinsic" }, 134, 19 ], [ "load_dynamic", 78, 77, 6, 134, 24 ], [ "is_array", 79, 18, 134, 24 ], [ "jump_false", 79, "push_err_71", 134, 24 ], [ "push", 18, 78, 134, 24 ], [ "jump", "push_done_72", 134, 24 ], "push_err_71", [ "disrupt", 134, 24 ], "push_done_72", [ "access", 80, 1, 135, 13 ], [ "add", 81, 6, 80, 135, 13 ], [ "move", 6, 81, 135, 13 ], [ "jump", "while_start_65", 135, 13 ], "while_end_66", [ "access", 82, ".ce", 138, 23 ], [ "add", 83, 14, 82, 138, 23 ], [ "move", 15, 83, 138, 23 ], [ "is_proxy", 85, 3, 139, 6 ], [ "jump_false", 85, "record_path_75", 139, 6 ], [ "null", 86, 139, 6 ], [ "access", 87, "is_file", 139, 6 ], [ "array", 88, 0, 139, 6 ], [ "push", 88, 15, 139, 6 ], [ "frame", 89, 3, 2, 139, 6 ], [ "setarg", 89, 0, 86, 139, 6 ], [ "setarg", 89, 1, 87, 139, 6 ], [ "setarg", 89, 2, 88, 139, 6 ], [ "invoke", 89, 84, 139, 6 ], [ "jump", "call_done_76", 139, 6 ], "record_path_75", [ "load_field", 90, 3, "is_file", 139, 6 ], [ "frame", 91, 90, 1, 139, 6 ], [ "setarg", 91, 0, 3, 139, 6 ], [ "setarg", 91, 1, 15, 139, 6 ], [ "invoke", 91, 84, 139, 6 ], "call_done_76", "_nop_bl_2", [ "jump_true", 84, "if_else_73", 139, 6 ], [ "access", 93, { "name": "core_path", "kind": "name", "make": "intrinsic" }, 140, 15 ], [ "access", 94, "/", 140, 27 ], [ "add", 95, 93, 94, 140, 27 ], [ "add", 96, 95, 14, 140, 33 ], [ "access", 97, ".ce", 140, 43 ], [ "add", 98, 96, 97, 140, 43 ], [ "move", 15, 98, 140, 43 ], [ "jump", "if_end_74", 140, 43 ], "if_else_73", "if_end_74", [ "is_proxy", 100, 3, 141, 6 ], [ "jump_false", 100, "record_path_79", 141, 6 ], [ "null", 101, 141, 6 ], [ "access", 102, "is_file", 141, 6 ], [ "array", 103, 0, 141, 6 ], [ "push", 103, 15, 141, 6 ], [ "frame", 104, 3, 2, 141, 6 ], [ "setarg", 104, 0, 101, 141, 6 ], [ "setarg", 104, 1, 102, 141, 6 ], [ "setarg", 104, 2, 103, 141, 6 ], [ "invoke", 104, 99, 141, 6 ], [ "jump", "call_done_80", 141, 6 ], "record_path_79", [ "load_field", 105, 3, "is_file", 141, 6 ], [ "frame", 106, 105, 1, 141, 6 ], [ "setarg", 106, 0, 3, 141, 6 ], [ "setarg", 106, 1, 15, 141, 6 ], [ "invoke", 106, 99, 141, 6 ], "call_done_80", "_nop_bl_3", [ "jump_true", 99, "if_else_77", 141, 6 ], [ "access", 108, ".cm", 142, 25 ], [ "add", 109, 14, 108, 142, 25 ], [ "move", 15, 109, 142, 25 ], [ "is_proxy", 111, 3, 143, 8 ], [ "jump_false", 111, "record_path_83", 143, 8 ], [ "null", 112, 143, 8 ], [ "access", 113, "is_file", 143, 8 ], [ "array", 114, 0, 143, 8 ], [ "push", 114, 15, 143, 8 ], [ "frame", 115, 3, 2, 143, 8 ], [ "setarg", 115, 0, 112, 143, 8 ], [ "setarg", 115, 1, 113, 143, 8 ], [ "setarg", 115, 2, 114, 143, 8 ], [ "invoke", 115, 110, 143, 8 ], [ "jump", "call_done_84", 143, 8 ], "record_path_83", [ "load_field", 116, 3, "is_file", 143, 8 ], [ "frame", 117, 116, 1, 143, 8 ], [ "setarg", 117, 0, 3, 143, 8 ], [ "setarg", 117, 1, 15, 143, 8 ], [ "invoke", 117, 110, 143, 8 ], "call_done_84", "_nop_bl_4", [ "jump_true", 110, "if_else_81", 143, 8 ], [ "access", 119, { "name": "core_path", "kind": "name", "make": "intrinsic" }, 144, 17 ], [ "access", 120, "/", 144, 29 ], [ "add", 121, 119, 120, 144, 29 ], [ "add", 122, 121, 14, 144, 35 ], [ "access", 123, ".cm", 144, 45 ], [ "add", 124, 122, 123, 144, 45 ], [ "move", 15, 124, 144, 45 ], [ "jump", "if_end_82", 144, 45 ], "if_else_81", "if_end_82", [ "jump", "if_end_78", 144, 45 ], "if_else_77", "if_end_78", [ "is_proxy", 126, 3, 146, 6 ], [ "jump_false", 126, "record_path_87", 146, 6 ], [ "null", 127, 146, 6 ], [ "access", 128, "is_file", 146, 6 ], [ "array", 129, 0, 146, 6 ], [ "push", 129, 15, 146, 6 ], [ "frame", 130, 3, 2, 146, 6 ], [ "setarg", 130, 0, 127, 146, 6 ], [ "setarg", 130, 1, 128, 146, 6 ], [ "setarg", 130, 2, 129, 146, 6 ], [ "invoke", 130, 125, 146, 6 ], [ "jump", "call_done_88", 146, 6 ], "record_path_87", [ "load_field", 131, 3, "is_file", 146, 6 ], [ "frame", 132, 131, 1, 146, 6 ], [ "setarg", 132, 0, 3, 146, 6 ], [ "setarg", 132, 1, 15, 146, 6 ], [ "invoke", 132, 125, 146, 6 ], "call_done_88", "_nop_bl_5", [ "jump_true", 125, "if_else_85", 146, 6 ], [ "access", 134, "seed: program not found: ", 147, 9 ], [ "add", 135, 134, 14, 147, 39 ], [ "access", 136, "\n", 147, 49 ], [ "add", 137, 135, 136, 147, 49 ], [ "access", 139, { "name": "print", "kind": "name", "make": "intrinsic" }, 147, 3 ], [ "frame", 140, 139, 1, 147, 3 ], [ "null", 141, 147, 3 ], [ "setarg", 140, 0, 141, 147, 3 ], [ "setarg", 140, 1, 137, 147, 3 ], [ "invoke", 140, 138, 147, 3 ], [ "disrupt", 148, 3 ], [ "jump", "if_end_86", 148, 3 ], "if_else_85", "if_end_86", [ "is_proxy", 143, 3, 151, 15 ], [ "jump_false", 143, "record_path_89", 151, 15 ], [ "null", 144, 151, 15 ], [ "access", 145, "slurp", 151, 15 ], [ "array", 146, 0, 151, 15 ], [ "push", 146, 15, 151, 15 ], [ "frame", 147, 3, 2, 151, 15 ], [ "setarg", 147, 0, 144, 151, 15 ], [ "setarg", 147, 1, 145, 151, 15 ], [ "setarg", 147, 2, 146, 151, 15 ], [ "invoke", 147, 142, 151, 15 ], [ "jump", "call_done_90", 151, 15 ], "record_path_89", [ "load_field", 148, 3, "slurp", 151, 15 ], [ "frame", 149, 148, 1, 151, 15 ], [ "setarg", 149, 0, 3, 151, 15 ], [ "setarg", 149, 1, 15, 151, 15 ], [ "invoke", 149, 142, 151, 15 ], "call_done_90", [ "access", 151, { "name": "text", "kind": "name", "make": "intrinsic" }, 151, 10 ], [ "frame", 152, 151, 1, 151, 10 ], [ "null", 153, 151, 10 ], [ "setarg", 152, 0, 153, 151, 10 ], [ "setarg", 152, 1, 142, 151, 10 ], [ "invoke", 152, 150, 151, 10 ], [ "move", 4, 150, 151, 10 ], [ "frame", 155, 7, 2, 152, 7 ], [ "null", 156, 152, 7 ], [ "setarg", 155, 0, 156, 152, 7 ], [ "setarg", 155, 1, 4, 152, 7 ], [ "setarg", 155, 2, 15, 152, 7 ], [ "invoke", 155, 154, 152, 7 ], [ "move", 19, 154, 152, 7 ], [ "record", 157, 2 ], [ "store_field", 157, 8, "use", 153, 29 ], [ "store_field", 157, 18, "args", 153, 43 ], [ "frame", 159, 9, 3, 153, 1 ], [ "null", 160, 153, 1 ], [ "setarg", 159, 0, 160, 153, 1 ], [ "setarg", 159, 1, 14, 153, 1 ], [ "setarg", 159, 2, 19, 153, 1 ], [ "setarg", 159, 3, 157, 153, 1 ], [ "invoke", 159, 158, 153, 1 ], [ "return", 158, 153, 1 ] ] }, "filename": "boot/seed_bootstrap.cm", "data": {} }