/** ** This file was automatically generated by the Cyclone scheme compiler ** http://justinethier.github.io/cyclone/ ** ** (c) 2014-2018 Justin Ethier ** Version 0.9.4 ** **/ #define closcall1(td, clo,a1) \ if (type_is_pair_prim(clo)) { \ Cyc_apply(td, 0, (closure)(a1), clo); \ } else { \ ((clo)->fn)(td, 1, clo,a1);\ } #define return_closcall1(td, clo,a1) { \ char top; \ if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ object buf[1]; buf[0] = a1;\ GC(td, clo, buf, 1); \ return; \ } else {\ closcall1(td, (closure) (clo),a1); \ return;\ } \ } #define return_direct1(td, _fn,a1) { \ char top; \ if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ object buf[1]; buf[0] = a1; \ mclosure0(c1, (function_type) _fn); \ GC(td, &c1, buf, 1); \ return; \ } else { \ (_fn)(td, 1, (closure)_fn,a1); \ }} #define return_direct_with_clo1(td, clo, _fn,a1) { \ char top; \ if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ object buf[1]; buf[0] = a1;\ GC(td, clo, buf, 1); \ return; \ } else { \ (_fn)(td, 1, (closure)(clo),a1); \ }} #define closcall2(td, clo,a1,a2) \ if (type_is_pair_prim(clo)) { \ Cyc_apply(td, 1, (closure)(a1), clo,a2); \ } else { \ ((clo)->fn)(td, 2, clo,a1,a2);\ } #define return_closcall2(td, clo,a1,a2) { \ char top; \ if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ object buf[2]; buf[0] = a1;buf[1] = a2;\ GC(td, clo, buf, 2); \ return; \ } else {\ closcall2(td, (closure) (clo),a1,a2); \ return;\ } \ } #define return_direct2(td, _fn,a1,a2) { \ char top; \ if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ object buf[2]; buf[0] = a1;buf[1] = a2; \ mclosure0(c1, (function_type) _fn); \ GC(td, &c1, buf, 2); \ return; \ } else { \ (_fn)(td, 2, (closure)_fn,a1,a2); \ }} #define return_direct_with_clo2(td, clo, _fn,a1,a2) { \ char top; \ if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ object buf[2]; buf[0] = a1;buf[1] = a2;\ GC(td, clo, buf, 2); \ return; \ } else { \ (_fn)(td, 2, (closure)(clo),a1,a2); \ }} #define closcall3(td, clo,a1,a2,a3) \ if (type_is_pair_prim(clo)) { \ Cyc_apply(td, 2, (closure)(a1), clo,a2,a3); \ } else { \ ((clo)->fn)(td, 3, clo,a1,a2,a3);\ } #define return_closcall3(td, clo,a1,a2,a3) { \ char top; \ if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ object buf[3]; buf[0] = a1;buf[1] = a2;buf[2] = a3;\ GC(td, clo, buf, 3); \ return; \ } else {\ closcall3(td, (closure) (clo),a1,a2,a3); \ return;\ } \ } #define return_direct3(td, _fn,a1,a2,a3) { \ char top; \ if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ object buf[3]; buf[0] = a1;buf[1] = a2;buf[2] = a3; \ mclosure0(c1, (function_type) _fn); \ GC(td, &c1, buf, 3); \ return; \ } else { \ (_fn)(td, 3, (closure)_fn,a1,a2,a3); \ }} #define return_direct_with_clo3(td, clo, _fn,a1,a2,a3) { \ char top; \ if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ object buf[3]; buf[0] = a1;buf[1] = a2;buf[2] = a3;\ GC(td, clo, buf, 3); \ return; \ } else { \ (_fn)(td, 3, (closure)(clo),a1,a2,a3); \ }} #define closcall5(td, clo,a1,a2,a3,a4,a5) \ if (type_is_pair_prim(clo)) { \ Cyc_apply(td, 4, (closure)(a1), clo,a2,a3,a4,a5); \ } else { \ ((clo)->fn)(td, 5, clo,a1,a2,a3,a4,a5);\ } #define return_closcall5(td, clo,a1,a2,a3,a4,a5) { \ char top; \ if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ object buf[5]; buf[0] = a1;buf[1] = a2;buf[2] = a3;buf[3] = a4;buf[4] = a5;\ GC(td, clo, buf, 5); \ return; \ } else {\ closcall5(td, (closure) (clo),a1,a2,a3,a4,a5); \ return;\ } \ } #define return_direct5(td, _fn,a1,a2,a3,a4,a5) { \ char top; \ if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ object buf[5]; buf[0] = a1;buf[1] = a2;buf[2] = a3;buf[3] = a4;buf[4] = a5; \ mclosure0(c1, (function_type) _fn); \ GC(td, &c1, buf, 5); \ return; \ } else { \ (_fn)(td, 5, (closure)_fn,a1,a2,a3,a4,a5); \ }} #define return_direct_with_clo5(td, clo, _fn,a1,a2,a3,a4,a5) { \ char top; \ if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ object buf[5]; buf[0] = a1;buf[1] = a2;buf[2] = a3;buf[3] = a4;buf[4] = a5;\ GC(td, clo, buf, 5); \ return; \ } else { \ (_fn)(td, 5, (closure)(clo),a1,a2,a3,a4,a5); \ }} #include "cyclone/types.h" object __glo_this_91scheme_91implementation_91name = NULL; object __glo_run_91r7rs_91benchmark = NULL; object __glo_hide = NULL; object __glo_main = NULL; object __glo_ack = NULL; extern object __glo_member_scheme_base; extern object __glo_assoc_scheme_base; extern object __glo_cons_91source_scheme_base; extern object __glo_syntax_91rules_scheme_base; extern object __glo_letrec_85_scheme_base; extern object __glo_guard_scheme_base; extern object __glo_guard_91aux_scheme_base; extern object __glo_define_91record_91type_scheme_base; extern object __glo_record_127_scheme_base; extern object __glo_is_91a_127_scheme_base; extern object __glo_register_91simple_91type_scheme_base; extern object __glo_make_91type_91predicate_scheme_base; extern object __glo_make_91constructor_scheme_base; extern object __glo_make_91getter_scheme_base; extern object __glo_make_91setter_scheme_base; extern object __glo_slot_91ref_scheme_base; extern object __glo_slot_91set_67_scheme_base; extern object __glo_type_91slot_91offset_scheme_base; extern object __glo_receive_scheme_base; extern object __glo_abs_scheme_base; extern object __glo_max_scheme_base; extern object __glo_min_scheme_base; extern object __glo_modulo_scheme_base; extern object __glo_floor_91remainder_scheme_base; extern object __glo_even_127_scheme_base; extern object __glo_exact_91integer_127_scheme_base; extern object __glo_exact_91integer_91sqrt_scheme_base; extern object __glo_exact_127_scheme_base; extern object __glo_inexact_127_scheme_base; extern object __glo_odd_127_scheme_base; extern object __glo_complex_127_scheme_base; extern object __glo_rational_127_scheme_base; extern object __glo_bignum_127_scheme_base; extern object __glo_gcd_scheme_base; extern object __glo_lcm_scheme_base; extern object __glo_quotient_scheme_base; extern object __glo_remainder_scheme_base; extern object __glo_truncate_91quotient_scheme_base; extern object __glo_truncate_91remainder_scheme_base; extern object __glo_truncate_95_scheme_base; extern object __glo_floor_91quotient_scheme_base; extern object __glo_floor_91remainder_scheme_base; extern object __glo_floor_95_scheme_base; extern object __glo_square_scheme_base; extern object __glo_expt_scheme_base; extern object __glo_call_91with_91current_91continuation_scheme_base; extern object __glo_call_95cc_scheme_base; extern object __glo_call_91with_91values_scheme_base; extern object __glo_dynamic_91wind_scheme_base; extern object __glo_values_scheme_base; extern object __glo_char_123_127_scheme_base; extern object __glo_char_121_127_scheme_base; extern object __glo_char_125_127_scheme_base; extern object __glo_char_121_123_127_scheme_base; extern object __glo_char_125_123_127_scheme_base; extern object __glo_string_123_127_scheme_base; extern object __glo_string_121_127_scheme_base; extern object __glo_string_121_123_127_scheme_base; extern object __glo_string_125_127_scheme_base; extern object __glo_string_125_123_127_scheme_base; extern object __glo_foldl_scheme_base; extern object __glo_foldr_scheme_base; extern object __glo_not_scheme_base; extern object __glo_list_127_scheme_base; extern object __glo_zero_127_scheme_base; extern object __glo_positive_127_scheme_base; extern object __glo_negative_127_scheme_base; extern object __glo_append_scheme_base; extern object __glo__list_scheme_base; extern object __glo_make_91list_scheme_base; extern object __glo_list_91copy_scheme_base; extern object __glo_map_scheme_base; extern object __glo_Cyc_91map_91loop_911_scheme_base; extern object __glo_Cyc_91for_91each_91loop_911_scheme_base; extern object __glo_for_91each_scheme_base; extern object __glo_list_91tail_scheme_base; extern object __glo_list_91ref_scheme_base; extern object __glo_list_91set_67_scheme_base; extern object __glo_reverse_scheme_base; extern object __glo_boolean_123_127_scheme_base; extern object __glo_symbol_123_127_scheme_base; extern object __glo_Cyc_91obj_123_127_scheme_base; extern object __glo_vector_scheme_base; extern object __glo_vector_91append_scheme_base; extern object __glo_vector_91copy_scheme_base; extern object __glo_vector_91copy_67_scheme_base; extern object __glo_vector_91fill_67_scheme_base; extern object __glo_vector_91_125list_scheme_base; extern object __glo_vector_91_125string_scheme_base; extern object __glo_vector_91map_scheme_base; extern object __glo_vector_91for_91each_scheme_base; extern object __glo_make_91string_scheme_base; extern object __glo_string_scheme_base; extern object __glo_string_91copy_scheme_base; extern object __glo_string_91copy_67_scheme_base; extern object __glo_string_91fill_67_scheme_base; extern object __glo_string_91_125list_scheme_base; extern object __glo_string_91_125vector_scheme_base; extern object __glo_string_91map_scheme_base; extern object __glo_string_91for_91each_scheme_base; extern object __glo_make_91parameter_scheme_base; extern object __glo_current_91output_91port_scheme_base; extern object __glo_current_91input_91port_scheme_base; extern object __glo_current_91error_91port_scheme_base; extern object __glo_call_91with_91port_scheme_base; extern object __glo_error_91object_127_scheme_base; extern object __glo_error_91object_91message_scheme_base; extern object __glo_error_91object_91irritants_scheme_base; extern object __glo_error_scheme_base; extern object __glo_raise_scheme_base; extern object __glo_raise_91continuable_scheme_base; extern object __glo_with_91handler_scheme_base; extern object __glo_with_91exception_91handler_scheme_base; extern object __glo_Cyc_91add_91exception_91handler_scheme_base; extern object __glo_Cyc_91remove_91exception_91handler_scheme_base; extern object __glo_newline_scheme_base; extern object __glo_write_91char_scheme_base; extern object __glo_write_91string_scheme_base; extern object __glo_flush_91output_91port_scheme_base; extern object __glo_peek_91char_scheme_base; extern object __glo_read_91char_scheme_base; extern object __glo_read_91line_scheme_base; extern object __glo_read_91string_scheme_base; extern object __glo_input_91port_127_scheme_base; extern object __glo_output_91port_127_scheme_base; extern object __glo_input_91port_91open_127_scheme_base; extern object __glo_output_91port_91open_127_scheme_base; extern object __glo_get_91output_91string_scheme_base; extern object __glo_open_91output_91string_scheme_base; extern object __glo_open_91input_91string_scheme_base; extern object __glo_get_91output_91bytevector_scheme_base; extern object __glo_open_91input_91bytevector_scheme_base; extern object __glo_open_91output_91bytevector_scheme_base; extern object __glo_features_scheme_base; extern object __glo_Cyc_91version_scheme_base; extern object __glo_any_scheme_base; extern object __glo_every_scheme_base; extern object __glo_and_scheme_base; extern object __glo_or_scheme_base; extern object __glo_let_scheme_base; extern object __glo_let_85_scheme_base; extern object __glo_letrec_scheme_base; extern object __glo_let_85_91values_scheme_base; extern object __glo_let_91values_scheme_base; extern object __glo_begin_scheme_base; extern object __glo__case_scheme_base; extern object __glo_cond_scheme_base; extern object __glo_cond_91expand_scheme_base; extern object __glo__do_scheme_base; extern object __glo_when_scheme_base; extern object __glo_unless_scheme_base; extern object __glo_quasiquote_scheme_base; extern object __glo_floor_scheme_base; extern object __glo_ceiling_scheme_base; extern object __glo_truncate_scheme_base; extern object __glo_round_scheme_base; extern object __glo_exact_scheme_base; extern object __glo_inexact_scheme_base; extern object __glo_eof_91object_scheme_base; extern object __glo_syntax_91error_scheme_base; extern object __glo_bytevector_91copy_scheme_base; extern object __glo_bytevector_91copy_67_scheme_base; extern object __glo_utf8_91_125string_scheme_base; extern object __glo_string_91_125utf8_scheme_base; extern object __glo_denominator_scheme_base; extern object __glo_numerator_scheme_base; extern object __glo_parameterize_scheme_base; extern object __glo_peek_91u8_scheme_base; extern object __glo_read_91u8_scheme_base; extern object __glo_write_91u8_scheme_base; extern object __glo_read_scheme_read; extern object __glo_read_91all_scheme_read; extern object __glo_include_scheme_read; extern object __glo_include_91ci_scheme_read; extern object __glo_display_scheme_write; extern object __glo_write_scheme_write; extern object __glo_write_91shared_scheme_write; extern object __glo_write_91simple_scheme_write; extern object __glo_current_91second_scheme_time; extern object __glo_current_91jiffy_scheme_time; extern object __glo_jiffies_91per_91second_scheme_time; extern object __glo_string_123_127_191_191inline_191_191_scheme_base; extern object __glo_string_121_127_191_191inline_191_191_scheme_base; extern object __glo_string_121_123_127_191_191inline_191_191_scheme_base; extern object __glo_string_125_127_191_191inline_191_191_scheme_base; extern object __glo_string_125_123_127_191_191inline_191_191_scheme_base; extern object __glo_not_191_191inline_191_191_scheme_base; extern object __glo_zero_127_191_191inline_191_191_scheme_base; extern object __glo_positive_127_191_191inline_191_191_scheme_base; extern object __glo_negative_127_191_191inline_191_191_scheme_base; extern object __glo_floor_191_191inline_191_191_scheme_base; extern object __glo_ceiling_191_191inline_191_191_scheme_base; extern object __glo_truncate_191_191inline_191_191_scheme_base; extern object __glo_round_191_191inline_191_191_scheme_base; extern object __glo_inexact_191_191inline_191_191_scheme_base; extern object __glo_sqrt_191_191inline_191_191_scheme_base; extern object __glo_exact_91integer_127_191_191inline_191_191_scheme_base; extern object __glo_exact_127_191_191inline_191_191_scheme_base; extern object __glo_complex_127_191_191inline_191_191_scheme_base; extern object __glo_denominator_191_191inline_191_191_scheme_base; extern object __glo_numerator_191_191inline_191_191_scheme_base; extern object __glo_quotient_191_191inline_191_191_scheme_base; extern object __glo_square_191_191inline_191_191_scheme_base; extern object __glo_eof_91object_191_191inline_191_191_scheme_base; extern object __glo_Cyc_91opaque_91eq_127_191_191inline_191_191_scheme_read; extern object __glo_Cyc_91opaque_91unsafe_91eq_127_191_191inline_191_191_scheme_read; extern object __glo_Cyc_91opaque_91unsafe_91string_127_191_191inline_191_191_scheme_read; #include "cyclone/runtime.h" #include "cyclone/runtime-main.h" static void __lambda_57(void *data, int argc, closure _,object k_73212) ; static void __lambda_58(void *data, int argc, object self_73269, object r_73213) ; static void __lambda_15(void *data, int argc, closure _,object k_73160, object name_7341_73101, object count_7342_73102, object thunk_7343_73103, object ok_127_7344_73104) ; static void __lambda_16(void *data, int argc, object self_73226, object rounded_73106) ; static void __lambda_60(void *data, int argc, object self_73227, object rounded_73106) ; static void __lambda_56(void *data, int argc, object self_73228, object k_73207, object x_7345_73108) ; static void __lambda_17(void *data, int argc, object self_73229, object r_73161) ; static void __lambda_18(void *data, int argc, object self_73230, object r_73162) ; static void __lambda_19(void *data, int argc, object self_73231, object r_73163) ; static void __lambda_20(void *data, int argc, object self_73232, object r_73164) ; static void __lambda_21(void *data, int argc, object self_73233, object r_73205) ; static void __lambda_22(void *data, int argc, object self_73234, object r_73165) ; static void __lambda_23(void *data, int argc, object self_73235, object j_95s_7348_73109) ; static void __lambda_24(void *data, int argc, object self_73236, object t0_7351_73110) ; static void __lambda_25(void *data, int argc, object self_73237, object j0_7354_73111) ; static void __lambda_26(void *data, int argc, object self_73238, object loop_7359_73114) ; static void __lambda_59(void *data, int argc, object self_73239, object loop_7359_73114) ; static void __lambda_28(void *data, int argc, object self_73240, object k_73171, object i_7360_73115, object result_7361_73116) ; static void __lambda_30(void *data, int argc, object self_73242, object r_73175) ; static void __lambda_51(void *data, int argc, object self_73263, object r_73200) ; static void __lambda_52(void *data, int argc, object self_73264, object r_73201) ; static void __lambda_53(void *data, int argc, object self_73265, object r_73202) ; static void __lambda_54(void *data, int argc, object self_73266, object r_73204) ; static void __lambda_55(void *data, int argc, object self_73267, object r_73203) ; static void __lambda_31(void *data, int argc, object self_73243, object j1_7370_73117) ; static void __lambda_32(void *data, int argc, object self_73244, object t1_7373_73118) ; static void __lambda_33(void *data, int argc, object self_73245, object secs2_7382_73121) ; static void __lambda_34(void *data, int argc, object self_73246, object r_73182) ; static void __lambda_35(void *data, int argc, object self_73247, object r_73183) ; static void __lambda_36(void *data, int argc, object self_73248, object r_73184) ; static void __lambda_37(void *data, int argc, object self_73249, object r_73185) ; static void __lambda_38(void *data, int argc, object self_73250, object r_73186) ; static void __lambda_39(void *data, int argc, object self_73251, object r_73187) ; static void __lambda_40(void *data, int argc, object self_73252, object r_73188) ; static void __lambda_41(void *data, int argc, object self_73253, object r_73189) ; static void __lambda_42(void *data, int argc, object self_73254, object r_73197) ; static void __lambda_43(void *data, int argc, object self_73255, object r_73190) ; static void __lambda_44(void *data, int argc, object self_73256, object r_73191) ; static void __lambda_45(void *data, int argc, object self_73257, object r_73192) ; static void __lambda_46(void *data, int argc, object self_73258, object r_73193) ; static void __lambda_47(void *data, int argc, object self_73259, object r_73194) ; static void __lambda_48(void *data, int argc, object self_73260, object r_73195) ; static void __lambda_49(void *data, int argc, object self_73261, object r_73196) ; static void __lambda_50(void *data, int argc, object self_73262, object r_73176) ; static void __lambda_29(void *data, int argc, object self_73241, object r_73174) ; static void __lambda_27(void *data, int argc, object self_73268, object r_73169) ; static void __lambda_8(void *data, int argc, closure _,object k_73146, object r_7336_7396, object x_7337_7397) ; static void __lambda_14(void *data, int argc, object self_73225, object k_73149, object v_7339_7399, object i_7340_73100) ; static void __lambda_9(void *data, int argc, object self_73220, object k_73151) ; static void __lambda_13(void *data, int argc, object self_73224, object k_73157, object x_7338_7398) ; static void __lambda_10(void *data, int argc, object self_73221, object r_73152) ; static void __lambda_12(void *data, int argc, object self_73222, object r_73153) ; static void __lambda_11(void *data, int argc, object self_73223, object k_73154) ; static void __lambda_3(void *data, int argc, closure _,object k_73133) ; static void __lambda_7(void *data, int argc, object self_73219, object k_73140, object result_7335_7395) ; static void __lambda_4(void *data, int argc, object self_73216, object k_73141) ; static void __lambda_5(void *data, int argc, object self_73217, object r_73142) ; static void __lambda_6(void *data, int argc, object self_73218, object r_73143) ; static void __lambda_1(void *data, int argc, closure _,object k_73124, object m_731_7385, object n_732_7386) ; static void __lambda_2(void *data, int argc, object self_73215, object r_73129) ; static void __lambda_57(void *data, int argc, closure _,object k_73212) { Cyc_st_add(data, "ack.scm:this-scheme-implementation-name"); closureN_type c_73528; c_73528.hdr.mark = gc_color_red; c_73528.hdr.grayed = 0; c_73528.tag = closureN_tag; c_73528.fn = (function_type)__lambda_58; c_73528.pc = 0; c_73528.num_args = 1; c_73528.num_elements = 1; c_73528.elements = (object *)alloca(sizeof(object) * 1); c_73528.elements[0] = k_73212; return_closcall1(data, __glo_Cyc_91version_scheme_base, &c_73528);; } static void __lambda_58(void *data, int argc, object self_73269, object r_73213) { make_utf8_string_with_len(c_73534, "cyclone-", 8, 8); object c_73533 = Cyc_string_append(data, ((closureN)self_73269)->elements[0],2,&c_73534, r_73213); return_closcall1(data, ((closureN)self_73269)->elements[0], c_73533);; } static void __lambda_15(void *data, int argc, closure _,object k_73160, object name_7341_73101, object count_7342_73102, object thunk_7343_73103, object ok_127_7344_73104) { Cyc_st_add(data, "ack.scm:run-r7rs-benchmark"); closureN_type c_73342; c_73342.hdr.mark = gc_color_red; c_73342.hdr.grayed = 0; c_73342.tag = closureN_tag; c_73342.fn = (function_type)__lambda_16; c_73342.pc = 0; c_73342.num_args = 1; c_73342.num_elements = 5; c_73342.elements = (object *)alloca(sizeof(object) * 5); c_73342.elements[0] = count_7342_73102; c_73342.elements[1] = k_73160; c_73342.elements[2] = name_7341_73101; c_73342.elements[3] = ok_127_7344_73104; c_73342.elements[4] = thunk_7343_73103; return_direct_with_clo1(data,(closure)&c_73342,__lambda_16, boolean_f);; } static void __lambda_16(void *data, int argc, object self_73226, object rounded_73106) { closureN_type c_73344; c_73344.hdr.mark = gc_color_red; c_73344.hdr.grayed = 0; c_73344.tag = closureN_tag; c_73344.fn = (function_type)__lambda_60; c_73344.pc = 0; c_73344.num_args = 1; c_73344.num_elements = 5; c_73344.elements = (object *)alloca(sizeof(object) * 5); c_73344.elements[0] = ((closureN)self_73226)->elements[0]; c_73344.elements[1] = ((closureN)self_73226)->elements[1]; c_73344.elements[2] = ((closureN)self_73226)->elements[2]; c_73344.elements[3] = ((closureN)self_73226)->elements[3]; c_73344.elements[4] = ((closureN)self_73226)->elements[4]; make_cell(c_73525,rounded_73106); return_direct_with_clo1(data,(closure)&c_73344,__lambda_60, &c_73525);; } static void __lambda_60(void *data, int argc, object self_73227, object rounded_73106) { closureN_type c_73346; c_73346.hdr.mark = gc_color_red; c_73346.hdr.grayed = 0; c_73346.tag = closureN_tag; c_73346.fn = (function_type)__lambda_17; c_73346.pc = 0; c_73346.num_args = 1; c_73346.num_elements = 6; c_73346.elements = (object *)alloca(sizeof(object) * 6); c_73346.elements[0] = ((closureN)self_73227)->elements[0]; c_73346.elements[1] = ((closureN)self_73227)->elements[1]; c_73346.elements[2] = ((closureN)self_73227)->elements[2]; c_73346.elements[3] = ((closureN)self_73227)->elements[3]; c_73346.elements[4] = rounded_73106; c_73346.elements[5] = ((closureN)self_73227)->elements[4]; mclosure0(c_73509, (function_type)__lambda_56);c_73509.num_args = 1; return_direct_with_clo1(data,(closure)&c_73346,__lambda_17, Cyc_set_cell(data, rounded_73106, &c_73509));; } static void __lambda_56(void *data, int argc, object self_73228, object k_73207, object x_7345_73108) { complex_num_type local_73521; object c_73522 = Cyc_fast_mul(data,&local_73521,obj_int2obj(1000), x_7345_73108); complex_num_type local_73517; object c_73518 = ((inline_function_type) ((closure)__glo_round_191_191inline_191_191_scheme_base)->fn)(data,&local_73517,c_73522); complex_num_type local_73513; object c_73514 = Cyc_fast_div(data,&local_73513,c_73518, obj_int2obj(1000)); return_closcall1(data, k_73207, c_73514);; } static void __lambda_17(void *data, int argc, object self_73229, object r_73161) { closureN_type c_73348; c_73348.hdr.mark = gc_color_red; c_73348.hdr.grayed = 0; c_73348.tag = closureN_tag; c_73348.fn = (function_type)__lambda_18; c_73348.pc = 0; c_73348.num_args = 1; c_73348.num_elements = 6; c_73348.elements = (object *)alloca(sizeof(object) * 6); c_73348.elements[0] = ((closureN)self_73229)->elements[0]; c_73348.elements[1] = ((closureN)self_73229)->elements[1]; c_73348.elements[2] = ((closureN)self_73229)->elements[2]; c_73348.elements[3] = ((closureN)self_73229)->elements[3]; c_73348.elements[4] = ((closureN)self_73229)->elements[4]; c_73348.elements[5] = ((closureN)self_73229)->elements[5]; make_utf8_string_with_len(c_73506, "Running ", 8, 8); return_closcall2(data, __glo_display_scheme_write, &c_73348, &c_73506);; } static void __lambda_18(void *data, int argc, object self_73230, object r_73162) { closureN_type c_73350; c_73350.hdr.mark = gc_color_red; c_73350.hdr.grayed = 0; c_73350.tag = closureN_tag; c_73350.fn = (function_type)__lambda_19; c_73350.pc = 0; c_73350.num_args = 1; c_73350.num_elements = 6; c_73350.elements = (object *)alloca(sizeof(object) * 6); c_73350.elements[0] = ((closureN)self_73230)->elements[0]; c_73350.elements[1] = ((closureN)self_73230)->elements[1]; c_73350.elements[2] = ((closureN)self_73230)->elements[2]; c_73350.elements[3] = ((closureN)self_73230)->elements[3]; c_73350.elements[4] = ((closureN)self_73230)->elements[4]; c_73350.elements[5] = ((closureN)self_73230)->elements[5]; return_closcall2(data, __glo_display_scheme_write, &c_73350, ((closureN)self_73230)->elements[2]);; } static void __lambda_19(void *data, int argc, object self_73231, object r_73163) { closureN_type c_73352; c_73352.hdr.mark = gc_color_red; c_73352.hdr.grayed = 0; c_73352.tag = closureN_tag; c_73352.fn = (function_type)__lambda_20; c_73352.pc = 0; c_73352.num_args = 1; c_73352.num_elements = 6; c_73352.elements = (object *)alloca(sizeof(object) * 6); c_73352.elements[0] = ((closureN)self_73231)->elements[0]; c_73352.elements[1] = ((closureN)self_73231)->elements[1]; c_73352.elements[2] = ((closureN)self_73231)->elements[2]; c_73352.elements[3] = ((closureN)self_73231)->elements[3]; c_73352.elements[4] = ((closureN)self_73231)->elements[4]; c_73352.elements[5] = ((closureN)self_73231)->elements[5]; return_closcall1(data, __glo_newline_scheme_base, &c_73352);; } static void __lambda_20(void *data, int argc, object self_73232, object r_73164) { closureN_type c_73354; c_73354.hdr.mark = gc_color_red; c_73354.hdr.grayed = 0; c_73354.tag = closureN_tag; c_73354.fn = (function_type)__lambda_21; c_73354.pc = 0; c_73354.num_args = 1; c_73354.num_elements = 6; c_73354.elements = (object *)alloca(sizeof(object) * 6); c_73354.elements[0] = ((closureN)self_73232)->elements[0]; c_73354.elements[1] = ((closureN)self_73232)->elements[1]; c_73354.elements[2] = ((closureN)self_73232)->elements[2]; c_73354.elements[3] = ((closureN)self_73232)->elements[3]; c_73354.elements[4] = ((closureN)self_73232)->elements[4]; c_73354.elements[5] = ((closureN)self_73232)->elements[5]; return_closcall1(data, __glo_current_91output_91port_scheme_base, &c_73354);; } static void __lambda_21(void *data, int argc, object self_73233, object r_73205) { closureN_type c_73356; c_73356.hdr.mark = gc_color_red; c_73356.hdr.grayed = 0; c_73356.tag = closureN_tag; c_73356.fn = (function_type)__lambda_22; c_73356.pc = 0; c_73356.num_args = 1; c_73356.num_elements = 6; c_73356.elements = (object *)alloca(sizeof(object) * 6); c_73356.elements[0] = ((closureN)self_73233)->elements[0]; c_73356.elements[1] = ((closureN)self_73233)->elements[1]; c_73356.elements[2] = ((closureN)self_73233)->elements[2]; c_73356.elements[3] = ((closureN)self_73233)->elements[3]; c_73356.elements[4] = ((closureN)self_73233)->elements[4]; c_73356.elements[5] = ((closureN)self_73233)->elements[5]; return_closcall2(data, __glo_flush_91output_91port_scheme_base, &c_73356, r_73205);; } static void __lambda_22(void *data, int argc, object self_73234, object r_73165) { closureN_type c_73358; c_73358.hdr.mark = gc_color_red; c_73358.hdr.grayed = 0; c_73358.tag = closureN_tag; c_73358.fn = (function_type)__lambda_23; c_73358.pc = 0; c_73358.num_args = 1; c_73358.num_elements = 6; c_73358.elements = (object *)alloca(sizeof(object) * 6); c_73358.elements[0] = ((closureN)self_73234)->elements[0]; c_73358.elements[1] = ((closureN)self_73234)->elements[1]; c_73358.elements[2] = ((closureN)self_73234)->elements[2]; c_73358.elements[3] = ((closureN)self_73234)->elements[3]; c_73358.elements[4] = ((closureN)self_73234)->elements[4]; c_73358.elements[5] = ((closureN)self_73234)->elements[5]; return_closcall1(data, __glo_jiffies_91per_91second_scheme_time, &c_73358);; } static void __lambda_23(void *data, int argc, object self_73235, object j_95s_7348_73109) { closureN_type c_73360; c_73360.hdr.mark = gc_color_red; c_73360.hdr.grayed = 0; c_73360.tag = closureN_tag; c_73360.fn = (function_type)__lambda_24; c_73360.pc = 0; c_73360.num_args = 1; c_73360.num_elements = 7; c_73360.elements = (object *)alloca(sizeof(object) * 7); c_73360.elements[0] = ((closureN)self_73235)->elements[0]; c_73360.elements[1] = j_95s_7348_73109; c_73360.elements[2] = ((closureN)self_73235)->elements[1]; c_73360.elements[3] = ((closureN)self_73235)->elements[2]; c_73360.elements[4] = ((closureN)self_73235)->elements[3]; c_73360.elements[5] = ((closureN)self_73235)->elements[4]; c_73360.elements[6] = ((closureN)self_73235)->elements[5]; return_closcall1(data, __glo_current_91second_scheme_time, &c_73360);; } static void __lambda_24(void *data, int argc, object self_73236, object t0_7351_73110) { closureN_type c_73362; c_73362.hdr.mark = gc_color_red; c_73362.hdr.grayed = 0; c_73362.tag = closureN_tag; c_73362.fn = (function_type)__lambda_25; c_73362.pc = 0; c_73362.num_args = 1; c_73362.num_elements = 8; c_73362.elements = (object *)alloca(sizeof(object) * 8); c_73362.elements[0] = ((closureN)self_73236)->elements[0]; c_73362.elements[1] = ((closureN)self_73236)->elements[1]; c_73362.elements[2] = ((closureN)self_73236)->elements[2]; c_73362.elements[3] = ((closureN)self_73236)->elements[3]; c_73362.elements[4] = ((closureN)self_73236)->elements[4]; c_73362.elements[5] = ((closureN)self_73236)->elements[5]; c_73362.elements[6] = t0_7351_73110; c_73362.elements[7] = ((closureN)self_73236)->elements[6]; return_closcall1(data, __glo_current_91jiffy_scheme_time, &c_73362);; } static void __lambda_25(void *data, int argc, object self_73237, object j0_7354_73111) { closureN_type c_73364; c_73364.hdr.mark = gc_color_red; c_73364.hdr.grayed = 0; c_73364.tag = closureN_tag; c_73364.fn = (function_type)__lambda_26; c_73364.pc = 0; c_73364.num_args = 1; c_73364.num_elements = 9; c_73364.elements = (object *)alloca(sizeof(object) * 9); c_73364.elements[0] = ((closureN)self_73237)->elements[0]; c_73364.elements[1] = ((closureN)self_73237)->elements[1]; c_73364.elements[2] = j0_7354_73111; c_73364.elements[3] = ((closureN)self_73237)->elements[2]; c_73364.elements[4] = ((closureN)self_73237)->elements[3]; c_73364.elements[5] = ((closureN)self_73237)->elements[4]; c_73364.elements[6] = ((closureN)self_73237)->elements[5]; c_73364.elements[7] = ((closureN)self_73237)->elements[6]; c_73364.elements[8] = ((closureN)self_73237)->elements[7]; return_direct_with_clo1(data,(closure)&c_73364,__lambda_26, boolean_f);; } static void __lambda_26(void *data, int argc, object self_73238, object loop_7359_73114) { closureN_type c_73366; c_73366.hdr.mark = gc_color_red; c_73366.hdr.grayed = 0; c_73366.tag = closureN_tag; c_73366.fn = (function_type)__lambda_59; c_73366.pc = 0; c_73366.num_args = 1; c_73366.num_elements = 9; c_73366.elements = (object *)alloca(sizeof(object) * 9); c_73366.elements[0] = ((closureN)self_73238)->elements[0]; c_73366.elements[1] = ((closureN)self_73238)->elements[1]; c_73366.elements[2] = ((closureN)self_73238)->elements[2]; c_73366.elements[3] = ((closureN)self_73238)->elements[3]; c_73366.elements[4] = ((closureN)self_73238)->elements[4]; c_73366.elements[5] = ((closureN)self_73238)->elements[5]; c_73366.elements[6] = ((closureN)self_73238)->elements[6]; c_73366.elements[7] = ((closureN)self_73238)->elements[7]; c_73366.elements[8] = ((closureN)self_73238)->elements[8]; make_cell(c_73504,loop_7359_73114); return_direct_with_clo1(data,(closure)&c_73366,__lambda_59, &c_73504);; } static void __lambda_59(void *data, int argc, object self_73239, object loop_7359_73114) { closureN_type c_73368; c_73368.hdr.mark = gc_color_red; c_73368.hdr.grayed = 0; c_73368.tag = closureN_tag; c_73368.fn = (function_type)__lambda_27; c_73368.pc = 0; c_73368.num_args = 1; c_73368.num_elements = 2; c_73368.elements = (object *)alloca(sizeof(object) * 2); c_73368.elements[0] = ((closureN)self_73239)->elements[3]; c_73368.elements[1] = loop_7359_73114; closureN_type c_73376; c_73376.hdr.mark = gc_color_red; c_73376.hdr.grayed = 0; c_73376.tag = closureN_tag; c_73376.fn = (function_type)__lambda_28; c_73376.pc = 0; c_73376.num_args = 2; c_73376.num_elements = 9; c_73376.elements = (object *)alloca(sizeof(object) * 9); c_73376.elements[0] = ((closureN)self_73239)->elements[0]; c_73376.elements[1] = ((closureN)self_73239)->elements[1]; c_73376.elements[2] = ((closureN)self_73239)->elements[2]; c_73376.elements[3] = loop_7359_73114; c_73376.elements[4] = ((closureN)self_73239)->elements[4]; c_73376.elements[5] = ((closureN)self_73239)->elements[5]; c_73376.elements[6] = ((closureN)self_73239)->elements[6]; c_73376.elements[7] = ((closureN)self_73239)->elements[7]; c_73376.elements[8] = ((closureN)self_73239)->elements[8]; return_direct_with_clo1(data,(closure)&c_73368,__lambda_27, Cyc_set_cell(data, loop_7359_73114, &c_73376));; } static void __lambda_28(void *data, int argc, object self_73240, object k_73171, object i_7360_73115, object result_7361_73116) { object c_73379 = Cyc_num_fast_lt_op(data,i_7360_73115, ((closureN)self_73240)->elements[0]); if( (boolean_f != c_73379) ){ closureN_type c_73383; c_73383.hdr.mark = gc_color_red; c_73383.hdr.grayed = 0; c_73383.tag = closureN_tag; c_73383.fn = (function_type)__lambda_29; c_73383.pc = 0; c_73383.num_args = 1; c_73383.num_elements = 3; c_73383.elements = (object *)alloca(sizeof(object) * 3); c_73383.elements[0] = i_7360_73115; c_73383.elements[1] = k_73171; c_73383.elements[2] = ((closureN)self_73240)->elements[3]; return_closcall1(data, ((closureN)self_73240)->elements[8], &c_73383); } else { closureN_type c_73396; c_73396.hdr.mark = gc_color_red; c_73396.hdr.grayed = 0; c_73396.tag = closureN_tag; c_73396.fn = (function_type)__lambda_30; c_73396.pc = 0; c_73396.num_args = 1; c_73396.num_elements = 7; c_73396.elements = (object *)alloca(sizeof(object) * 7); c_73396.elements[0] = ((closureN)self_73240)->elements[1]; c_73396.elements[1] = ((closureN)self_73240)->elements[2]; c_73396.elements[2] = k_73171; c_73396.elements[3] = ((closureN)self_73240)->elements[4]; c_73396.elements[4] = result_7361_73116; c_73396.elements[5] = ((closureN)self_73240)->elements[6]; c_73396.elements[6] = ((closureN)self_73240)->elements[7]; return_closcall2(data, ((closureN)self_73240)->elements[5], &c_73396, result_7361_73116);} ; } static void __lambda_30(void *data, int argc, object self_73242, object r_73175) { if( (boolean_f != r_73175) ){ closureN_type c_73398; c_73398.hdr.mark = gc_color_red; c_73398.hdr.grayed = 0; c_73398.tag = closureN_tag; c_73398.fn = (function_type)__lambda_31; c_73398.pc = 0; c_73398.num_args = 1; c_73398.num_elements = 7; c_73398.elements = (object *)alloca(sizeof(object) * 7); c_73398.elements[0] = ((closureN)self_73242)->elements[0]; c_73398.elements[1] = ((closureN)self_73242)->elements[1]; c_73398.elements[2] = ((closureN)self_73242)->elements[2]; c_73398.elements[3] = ((closureN)self_73242)->elements[3]; c_73398.elements[4] = ((closureN)self_73242)->elements[4]; c_73398.elements[5] = ((closureN)self_73242)->elements[5]; c_73398.elements[6] = ((closureN)self_73242)->elements[6]; return_closcall1(data, __glo_current_91jiffy_scheme_time, &c_73398); } else { closureN_type c_73488; c_73488.hdr.mark = gc_color_red; c_73488.hdr.grayed = 0; c_73488.tag = closureN_tag; c_73488.fn = (function_type)__lambda_51; c_73488.pc = 0; c_73488.num_args = 1; c_73488.num_elements = 2; c_73488.elements = (object *)alloca(sizeof(object) * 2); c_73488.elements[0] = ((closureN)self_73242)->elements[2]; c_73488.elements[1] = ((closureN)self_73242)->elements[4]; make_utf8_string_with_len(c_73501, "ERROR: returned incorrect result: ", 34, 34); return_closcall2(data, __glo_display_scheme_write, &c_73488, &c_73501);} ; } static void __lambda_51(void *data, int argc, object self_73263, object r_73200) { closureN_type c_73490; c_73490.hdr.mark = gc_color_red; c_73490.hdr.grayed = 0; c_73490.tag = closureN_tag; c_73490.fn = (function_type)__lambda_52; c_73490.pc = 0; c_73490.num_args = 1; c_73490.num_elements = 2; c_73490.elements = (object *)alloca(sizeof(object) * 2); c_73490.elements[0] = ((closureN)self_73263)->elements[0]; c_73490.elements[1] = ((closureN)self_73263)->elements[1]; return_closcall2(data, __glo_write_scheme_write, &c_73490, ((closureN)self_73263)->elements[1]);; } static void __lambda_52(void *data, int argc, object self_73264, object r_73201) { closureN_type c_73492; c_73492.hdr.mark = gc_color_red; c_73492.hdr.grayed = 0; c_73492.tag = closureN_tag; c_73492.fn = (function_type)__lambda_53; c_73492.pc = 0; c_73492.num_args = 1; c_73492.num_elements = 2; c_73492.elements = (object *)alloca(sizeof(object) * 2); c_73492.elements[0] = ((closureN)self_73264)->elements[0]; c_73492.elements[1] = ((closureN)self_73264)->elements[1]; return_closcall1(data, __glo_newline_scheme_base, &c_73492);; } static void __lambda_53(void *data, int argc, object self_73265, object r_73202) { closureN_type c_73494; c_73494.hdr.mark = gc_color_red; c_73494.hdr.grayed = 0; c_73494.tag = closureN_tag; c_73494.fn = (function_type)__lambda_54; c_73494.pc = 0; c_73494.num_args = 1; c_73494.num_elements = 2; c_73494.elements = (object *)alloca(sizeof(object) * 2); c_73494.elements[0] = ((closureN)self_73265)->elements[0]; c_73494.elements[1] = ((closureN)self_73265)->elements[1]; return_closcall1(data, __glo_current_91output_91port_scheme_base, &c_73494);; } static void __lambda_54(void *data, int argc, object self_73266, object r_73204) { closureN_type c_73496; c_73496.hdr.mark = gc_color_red; c_73496.hdr.grayed = 0; c_73496.tag = closureN_tag; c_73496.fn = (function_type)__lambda_55; c_73496.pc = 0; c_73496.num_args = 1; c_73496.num_elements = 2; c_73496.elements = (object *)alloca(sizeof(object) * 2); c_73496.elements[0] = ((closureN)self_73266)->elements[0]; c_73496.elements[1] = ((closureN)self_73266)->elements[1]; return_closcall2(data, __glo_flush_91output_91port_scheme_base, &c_73496, r_73204);; } static void __lambda_55(void *data, int argc, object self_73267, object r_73203) { return_closcall1(data, ((closureN)self_73267)->elements[0], ((closureN)self_73267)->elements[1]);; } static void __lambda_31(void *data, int argc, object self_73243, object j1_7370_73117) { closureN_type c_73400; c_73400.hdr.mark = gc_color_red; c_73400.hdr.grayed = 0; c_73400.tag = closureN_tag; c_73400.fn = (function_type)__lambda_32; c_73400.pc = 0; c_73400.num_args = 1; c_73400.num_elements = 8; c_73400.elements = (object *)alloca(sizeof(object) * 8); c_73400.elements[0] = ((closureN)self_73243)->elements[0]; c_73400.elements[1] = ((closureN)self_73243)->elements[1]; c_73400.elements[2] = j1_7370_73117; c_73400.elements[3] = ((closureN)self_73243)->elements[2]; c_73400.elements[4] = ((closureN)self_73243)->elements[3]; c_73400.elements[5] = ((closureN)self_73243)->elements[4]; c_73400.elements[6] = ((closureN)self_73243)->elements[5]; c_73400.elements[7] = ((closureN)self_73243)->elements[6]; return_closcall1(data, __glo_current_91second_scheme_time, &c_73400);; } static void __lambda_32(void *data, int argc, object self_73244, object t1_7373_73118) { closureN_type c_73405; c_73405.hdr.mark = gc_color_red; c_73405.hdr.grayed = 0; c_73405.tag = closureN_tag; c_73405.fn = (function_type)__lambda_33; c_73405.pc = 0; c_73405.num_args = 1; c_73405.num_elements = 6; c_73405.elements = (object *)alloca(sizeof(object) * 6); c_73405.elements[0] = ((closureN)self_73244)->elements[0]; c_73405.elements[1] = ((closureN)self_73244)->elements[1]; c_73405.elements[2] = ((closureN)self_73244)->elements[2]; c_73405.elements[3] = ((closureN)self_73244)->elements[3]; c_73405.elements[4] = ((closureN)self_73244)->elements[4]; c_73405.elements[5] = ((closureN)self_73244)->elements[5]; complex_num_type local_73484; object c_73485 = Cyc_fast_sub(data,&local_73484,t1_7373_73118, ((closureN)self_73244)->elements[7]); return_closcall2(data, car(((closureN)self_73244)->elements[6]), &c_73405, c_73485);; } static void __lambda_33(void *data, int argc, object self_73245, object secs2_7382_73121) { closureN_type c_73407; c_73407.hdr.mark = gc_color_red; c_73407.hdr.grayed = 0; c_73407.tag = closureN_tag; c_73407.fn = (function_type)__lambda_34; c_73407.pc = 0; c_73407.num_args = 1; c_73407.num_elements = 7; c_73407.elements = (object *)alloca(sizeof(object) * 7); c_73407.elements[0] = ((closureN)self_73245)->elements[0]; c_73407.elements[1] = ((closureN)self_73245)->elements[1]; c_73407.elements[2] = ((closureN)self_73245)->elements[2]; c_73407.elements[3] = ((closureN)self_73245)->elements[3]; c_73407.elements[4] = ((closureN)self_73245)->elements[4]; c_73407.elements[5] = ((closureN)self_73245)->elements[5]; c_73407.elements[6] = secs2_7382_73121; make_utf8_string_with_len(c_73481, "Elapsed time: ", 14, 14); return_closcall2(data, __glo_display_scheme_write, &c_73407, &c_73481);; } static void __lambda_34(void *data, int argc, object self_73246, object r_73182) { closureN_type c_73409; c_73409.hdr.mark = gc_color_red; c_73409.hdr.grayed = 0; c_73409.tag = closureN_tag; c_73409.fn = (function_type)__lambda_35; c_73409.pc = 0; c_73409.num_args = 1; c_73409.num_elements = 7; c_73409.elements = (object *)alloca(sizeof(object) * 7); c_73409.elements[0] = ((closureN)self_73246)->elements[0]; c_73409.elements[1] = ((closureN)self_73246)->elements[1]; c_73409.elements[2] = ((closureN)self_73246)->elements[2]; c_73409.elements[3] = ((closureN)self_73246)->elements[3]; c_73409.elements[4] = ((closureN)self_73246)->elements[4]; c_73409.elements[5] = ((closureN)self_73246)->elements[5]; c_73409.elements[6] = ((closureN)self_73246)->elements[6]; complex_num_type local_73476; object c_73477 = Cyc_fast_sub(data,&local_73476,((closureN)self_73246)->elements[2], ((closureN)self_73246)->elements[1]); complex_num_type local_73472; object c_73473 = Cyc_fast_div(data,&local_73472,c_73477, ((closureN)self_73246)->elements[0]); complex_num_type local_73468; object c_73469 = ((inline_function_type) ((closure)__glo_inexact_191_191inline_191_191_scheme_base)->fn)(data,&local_73468,c_73473); return_closcall2(data, __glo_write_scheme_write, &c_73409, c_73469);; } static void __lambda_35(void *data, int argc, object self_73247, object r_73183) { closureN_type c_73411; c_73411.hdr.mark = gc_color_red; c_73411.hdr.grayed = 0; c_73411.tag = closureN_tag; c_73411.fn = (function_type)__lambda_36; c_73411.pc = 0; c_73411.num_args = 1; c_73411.num_elements = 7; c_73411.elements = (object *)alloca(sizeof(object) * 7); c_73411.elements[0] = ((closureN)self_73247)->elements[0]; c_73411.elements[1] = ((closureN)self_73247)->elements[1]; c_73411.elements[2] = ((closureN)self_73247)->elements[2]; c_73411.elements[3] = ((closureN)self_73247)->elements[3]; c_73411.elements[4] = ((closureN)self_73247)->elements[4]; c_73411.elements[5] = ((closureN)self_73247)->elements[5]; c_73411.elements[6] = ((closureN)self_73247)->elements[6]; make_utf8_string_with_len(c_73465, " seconds (", 10, 10); return_closcall2(data, __glo_display_scheme_write, &c_73411, &c_73465);; } static void __lambda_36(void *data, int argc, object self_73248, object r_73184) { closureN_type c_73413; c_73413.hdr.mark = gc_color_red; c_73413.hdr.grayed = 0; c_73413.tag = closureN_tag; c_73413.fn = (function_type)__lambda_37; c_73413.pc = 0; c_73413.num_args = 1; c_73413.num_elements = 6; c_73413.elements = (object *)alloca(sizeof(object) * 6); c_73413.elements[0] = ((closureN)self_73248)->elements[0]; c_73413.elements[1] = ((closureN)self_73248)->elements[1]; c_73413.elements[2] = ((closureN)self_73248)->elements[2]; c_73413.elements[3] = ((closureN)self_73248)->elements[3]; c_73413.elements[4] = ((closureN)self_73248)->elements[4]; c_73413.elements[5] = ((closureN)self_73248)->elements[5]; return_closcall2(data, __glo_write_scheme_write, &c_73413, ((closureN)self_73248)->elements[6]);; } static void __lambda_37(void *data, int argc, object self_73249, object r_73185) { closureN_type c_73415; c_73415.hdr.mark = gc_color_red; c_73415.hdr.grayed = 0; c_73415.tag = closureN_tag; c_73415.fn = (function_type)__lambda_38; c_73415.pc = 0; c_73415.num_args = 1; c_73415.num_elements = 6; c_73415.elements = (object *)alloca(sizeof(object) * 6); c_73415.elements[0] = ((closureN)self_73249)->elements[0]; c_73415.elements[1] = ((closureN)self_73249)->elements[1]; c_73415.elements[2] = ((closureN)self_73249)->elements[2]; c_73415.elements[3] = ((closureN)self_73249)->elements[3]; c_73415.elements[4] = ((closureN)self_73249)->elements[4]; c_73415.elements[5] = ((closureN)self_73249)->elements[5]; make_utf8_string_with_len(c_73463, ") for ", 6, 6); return_closcall2(data, __glo_display_scheme_write, &c_73415, &c_73463);; } static void __lambda_38(void *data, int argc, object self_73250, object r_73186) { closureN_type c_73417; c_73417.hdr.mark = gc_color_red; c_73417.hdr.grayed = 0; c_73417.tag = closureN_tag; c_73417.fn = (function_type)__lambda_39; c_73417.pc = 0; c_73417.num_args = 1; c_73417.num_elements = 6; c_73417.elements = (object *)alloca(sizeof(object) * 6); c_73417.elements[0] = ((closureN)self_73250)->elements[0]; c_73417.elements[1] = ((closureN)self_73250)->elements[1]; c_73417.elements[2] = ((closureN)self_73250)->elements[2]; c_73417.elements[3] = ((closureN)self_73250)->elements[3]; c_73417.elements[4] = ((closureN)self_73250)->elements[4]; c_73417.elements[5] = ((closureN)self_73250)->elements[5]; return_closcall2(data, __glo_display_scheme_write, &c_73417, ((closureN)self_73250)->elements[4]);; } static void __lambda_39(void *data, int argc, object self_73251, object r_73187) { closureN_type c_73419; c_73419.hdr.mark = gc_color_red; c_73419.hdr.grayed = 0; c_73419.tag = closureN_tag; c_73419.fn = (function_type)__lambda_40; c_73419.pc = 0; c_73419.num_args = 1; c_73419.num_elements = 6; c_73419.elements = (object *)alloca(sizeof(object) * 6); c_73419.elements[0] = ((closureN)self_73251)->elements[0]; c_73419.elements[1] = ((closureN)self_73251)->elements[1]; c_73419.elements[2] = ((closureN)self_73251)->elements[2]; c_73419.elements[3] = ((closureN)self_73251)->elements[3]; c_73419.elements[4] = ((closureN)self_73251)->elements[4]; c_73419.elements[5] = ((closureN)self_73251)->elements[5]; return_closcall1(data, __glo_newline_scheme_base, &c_73419);; } static void __lambda_40(void *data, int argc, object self_73252, object r_73188) { closureN_type c_73421; c_73421.hdr.mark = gc_color_red; c_73421.hdr.grayed = 0; c_73421.tag = closureN_tag; c_73421.fn = (function_type)__lambda_41; c_73421.pc = 0; c_73421.num_args = 1; c_73421.num_elements = 6; c_73421.elements = (object *)alloca(sizeof(object) * 6); c_73421.elements[0] = ((closureN)self_73252)->elements[0]; c_73421.elements[1] = ((closureN)self_73252)->elements[1]; c_73421.elements[2] = ((closureN)self_73252)->elements[2]; c_73421.elements[3] = ((closureN)self_73252)->elements[3]; c_73421.elements[4] = ((closureN)self_73252)->elements[4]; c_73421.elements[5] = ((closureN)self_73252)->elements[5]; make_utf8_string_with_len(c_73461, "+!CSVLINE!+", 11, 11); return_closcall2(data, __glo_display_scheme_write, &c_73421, &c_73461);; } static void __lambda_41(void *data, int argc, object self_73253, object r_73189) { closureN_type c_73423; c_73423.hdr.mark = gc_color_red; c_73423.hdr.grayed = 0; c_73423.tag = closureN_tag; c_73423.fn = (function_type)__lambda_42; c_73423.pc = 0; c_73423.num_args = 1; c_73423.num_elements = 6; c_73423.elements = (object *)alloca(sizeof(object) * 6); c_73423.elements[0] = ((closureN)self_73253)->elements[0]; c_73423.elements[1] = ((closureN)self_73253)->elements[1]; c_73423.elements[2] = ((closureN)self_73253)->elements[2]; c_73423.elements[3] = ((closureN)self_73253)->elements[3]; c_73423.elements[4] = ((closureN)self_73253)->elements[4]; c_73423.elements[5] = ((closureN)self_73253)->elements[5]; return_closcall1(data, __glo_this_91scheme_91implementation_91name, &c_73423);; } static void __lambda_42(void *data, int argc, object self_73254, object r_73197) { closureN_type c_73425; c_73425.hdr.mark = gc_color_red; c_73425.hdr.grayed = 0; c_73425.tag = closureN_tag; c_73425.fn = (function_type)__lambda_43; c_73425.pc = 0; c_73425.num_args = 1; c_73425.num_elements = 6; c_73425.elements = (object *)alloca(sizeof(object) * 6); c_73425.elements[0] = ((closureN)self_73254)->elements[0]; c_73425.elements[1] = ((closureN)self_73254)->elements[1]; c_73425.elements[2] = ((closureN)self_73254)->elements[2]; c_73425.elements[3] = ((closureN)self_73254)->elements[3]; c_73425.elements[4] = ((closureN)self_73254)->elements[4]; c_73425.elements[5] = ((closureN)self_73254)->elements[5]; return_closcall2(data, __glo_display_scheme_write, &c_73425, r_73197);; } static void __lambda_43(void *data, int argc, object self_73255, object r_73190) { closureN_type c_73427; c_73427.hdr.mark = gc_color_red; c_73427.hdr.grayed = 0; c_73427.tag = closureN_tag; c_73427.fn = (function_type)__lambda_44; c_73427.pc = 0; c_73427.num_args = 1; c_73427.num_elements = 6; c_73427.elements = (object *)alloca(sizeof(object) * 6); c_73427.elements[0] = ((closureN)self_73255)->elements[0]; c_73427.elements[1] = ((closureN)self_73255)->elements[1]; c_73427.elements[2] = ((closureN)self_73255)->elements[2]; c_73427.elements[3] = ((closureN)self_73255)->elements[3]; c_73427.elements[4] = ((closureN)self_73255)->elements[4]; c_73427.elements[5] = ((closureN)self_73255)->elements[5]; make_utf8_string_with_len(c_73460, ",", 1, 1); return_closcall2(data, __glo_display_scheme_write, &c_73427, &c_73460);; } static void __lambda_44(void *data, int argc, object self_73256, object r_73191) { closureN_type c_73429; c_73429.hdr.mark = gc_color_red; c_73429.hdr.grayed = 0; c_73429.tag = closureN_tag; c_73429.fn = (function_type)__lambda_45; c_73429.pc = 0; c_73429.num_args = 1; c_73429.num_elements = 5; c_73429.elements = (object *)alloca(sizeof(object) * 5); c_73429.elements[0] = ((closureN)self_73256)->elements[0]; c_73429.elements[1] = ((closureN)self_73256)->elements[1]; c_73429.elements[2] = ((closureN)self_73256)->elements[2]; c_73429.elements[3] = ((closureN)self_73256)->elements[3]; c_73429.elements[4] = ((closureN)self_73256)->elements[5]; return_closcall2(data, __glo_display_scheme_write, &c_73429, ((closureN)self_73256)->elements[4]);; } static void __lambda_45(void *data, int argc, object self_73257, object r_73192) { closureN_type c_73431; c_73431.hdr.mark = gc_color_red; c_73431.hdr.grayed = 0; c_73431.tag = closureN_tag; c_73431.fn = (function_type)__lambda_46; c_73431.pc = 0; c_73431.num_args = 1; c_73431.num_elements = 5; c_73431.elements = (object *)alloca(sizeof(object) * 5); c_73431.elements[0] = ((closureN)self_73257)->elements[0]; c_73431.elements[1] = ((closureN)self_73257)->elements[1]; c_73431.elements[2] = ((closureN)self_73257)->elements[2]; c_73431.elements[3] = ((closureN)self_73257)->elements[3]; c_73431.elements[4] = ((closureN)self_73257)->elements[4]; make_utf8_string_with_len(c_73458, ",", 1, 1); return_closcall2(data, __glo_display_scheme_write, &c_73431, &c_73458);; } static void __lambda_46(void *data, int argc, object self_73258, object r_73193) { closureN_type c_73433; c_73433.hdr.mark = gc_color_red; c_73433.hdr.grayed = 0; c_73433.tag = closureN_tag; c_73433.fn = (function_type)__lambda_47; c_73433.pc = 0; c_73433.num_args = 1; c_73433.num_elements = 2; c_73433.elements = (object *)alloca(sizeof(object) * 2); c_73433.elements[0] = ((closureN)self_73258)->elements[3]; c_73433.elements[1] = ((closureN)self_73258)->elements[4]; complex_num_type local_73453; object c_73454 = Cyc_fast_sub(data,&local_73453,((closureN)self_73258)->elements[2], ((closureN)self_73258)->elements[1]); complex_num_type local_73449; object c_73450 = Cyc_fast_div(data,&local_73449,c_73454, ((closureN)self_73258)->elements[0]); complex_num_type local_73445; object c_73446 = ((inline_function_type) ((closure)__glo_inexact_191_191inline_191_191_scheme_base)->fn)(data,&local_73445,c_73450); return_closcall2(data, __glo_display_scheme_write, &c_73433, c_73446);; } static void __lambda_47(void *data, int argc, object self_73259, object r_73194) { closureN_type c_73435; c_73435.hdr.mark = gc_color_red; c_73435.hdr.grayed = 0; c_73435.tag = closureN_tag; c_73435.fn = (function_type)__lambda_48; c_73435.pc = 0; c_73435.num_args = 1; c_73435.num_elements = 2; c_73435.elements = (object *)alloca(sizeof(object) * 2); c_73435.elements[0] = ((closureN)self_73259)->elements[0]; c_73435.elements[1] = ((closureN)self_73259)->elements[1]; return_closcall1(data, __glo_newline_scheme_base, &c_73435);; } static void __lambda_48(void *data, int argc, object self_73260, object r_73195) { closureN_type c_73437; c_73437.hdr.mark = gc_color_red; c_73437.hdr.grayed = 0; c_73437.tag = closureN_tag; c_73437.fn = (function_type)__lambda_49; c_73437.pc = 0; c_73437.num_args = 1; c_73437.num_elements = 2; c_73437.elements = (object *)alloca(sizeof(object) * 2); c_73437.elements[0] = ((closureN)self_73260)->elements[0]; c_73437.elements[1] = ((closureN)self_73260)->elements[1]; return_closcall1(data, __glo_current_91output_91port_scheme_base, &c_73437);; } static void __lambda_49(void *data, int argc, object self_73261, object r_73196) { closureN_type c_73439; c_73439.hdr.mark = gc_color_red; c_73439.hdr.grayed = 0; c_73439.tag = closureN_tag; c_73439.fn = (function_type)__lambda_50; c_73439.pc = 0; c_73439.num_args = 1; c_73439.num_elements = 2; c_73439.elements = (object *)alloca(sizeof(object) * 2); c_73439.elements[0] = ((closureN)self_73261)->elements[0]; c_73439.elements[1] = ((closureN)self_73261)->elements[1]; return_closcall2(data, __glo_flush_91output_91port_scheme_base, &c_73439, r_73196);; } static void __lambda_50(void *data, int argc, object self_73262, object r_73176) { return_closcall1(data, ((closureN)self_73262)->elements[0], ((closureN)self_73262)->elements[1]);; } static void __lambda_29(void *data, int argc, object self_73241, object r_73174) { complex_num_type local_73391; object c_73392 = Cyc_fast_sum(data,&local_73391,((closureN)self_73241)->elements[0], obj_int2obj(1)); return_closcall3(data, car(((closureN)self_73241)->elements[2]), ((closureN)self_73241)->elements[1], c_73392, r_73174);; } static void __lambda_27(void *data, int argc, object self_73268, object r_73169) { return_closcall3(data, car(((closureN)self_73268)->elements[1]), ((closureN)self_73268)->elements[0], obj_int2obj(0), boolean_f);; } static void __lambda_8(void *data, int argc, closure _,object k_73146, object r_7336_7396, object x_7337_7397) { Cyc_st_add(data, "ack.scm:hide"); closureN_type c_73318; c_73318.hdr.mark = gc_color_red; c_73318.hdr.grayed = 0; c_73318.tag = closureN_tag; c_73318.fn = (function_type)__lambda_9; c_73318.pc = 0; c_73318.num_args = 0; c_73318.num_elements = 1; c_73318.elements = (object *)alloca(sizeof(object) * 1); c_73318.elements[0] = r_7336_7396; closureN_type c_73335; c_73335.hdr.mark = gc_color_red; c_73335.hdr.grayed = 0; c_73335.tag = closureN_tag; c_73335.fn = (function_type)__lambda_14; c_73335.pc = 0; c_73335.num_args = 2; c_73335.num_elements = 1; c_73335.elements = (object *)alloca(sizeof(object) * 1); c_73335.elements[0] = x_7337_7397; return_closcall3(data, __glo_call_91with_91values_scheme_base, k_73146, &c_73318, &c_73335);; } static void __lambda_14(void *data, int argc, object self_73225, object k_73149, object v_7339_7399, object i_7340_73100) { return_closcall2(data, Cyc_vector_ref(data, v_7339_7399, i_7340_73100), k_73149, ((closureN)self_73225)->elements[0]);; } static void __lambda_9(void *data, int argc, object self_73220, object k_73151) { closureN_type c_73320; c_73320.hdr.mark = gc_color_red; c_73320.hdr.grayed = 0; c_73320.tag = closureN_tag; c_73320.fn = (function_type)__lambda_10; c_73320.pc = 0; c_73320.num_args = 1; c_73320.num_elements = 2; c_73320.elements = (object *)alloca(sizeof(object) * 2); c_73320.elements[0] = k_73151; c_73320.elements[1] = ((closureN)self_73220)->elements[0]; mclosure0(c_73333, (function_type)__lambda_13);c_73333.num_args = 1; return_closcall3(data, __glo_vector_scheme_base, &c_73320, __glo_values_scheme_base, &c_73333);; } static void __lambda_13(void *data, int argc, object self_73224, object k_73157, object x_7338_7398) { return_closcall1(data, k_73157, x_7338_7398);; } static void __lambda_10(void *data, int argc, object self_73221, object r_73152) { closureN_type c_73322; c_73322.hdr.mark = gc_color_red; c_73322.hdr.grayed = 0; c_73322.tag = closureN_tag; c_73322.fn = (function_type)__lambda_11; c_73322.pc = 0; c_73322.num_args = 0; c_73322.num_elements = 1; c_73322.elements = (object *)alloca(sizeof(object) * 1); c_73322.elements[0] = ((closureN)self_73221)->elements[1]; closureN_type c_73329; c_73329.hdr.mark = gc_color_red; c_73329.hdr.grayed = 0; c_73329.tag = closureN_tag; c_73329.fn = (function_type)__lambda_12; c_73329.pc = 0; c_73329.num_args = 1; c_73329.num_elements = 2; c_73329.elements = (object *)alloca(sizeof(object) * 2); c_73329.elements[0] = ((closureN)self_73221)->elements[0]; c_73329.elements[1] = r_73152; return_direct_with_clo1(data,(closure)&c_73322,__lambda_11, &c_73329);; } static void __lambda_12(void *data, int argc, object self_73222, object r_73153) { return_closcall3(data, __glo_values_scheme_base, ((closureN)self_73222)->elements[0], ((closureN)self_73222)->elements[1], r_73153);; } static void __lambda_11(void *data, int argc, object self_73223, object k_73154) { object c_73325 = Cyc_num_fast_lt_op(data,((closureN)self_73223)->elements[0], obj_int2obj(100)); if( (boolean_f != c_73325) ){ return_direct_with_clo1(data, k_73154,__lambda_12, obj_int2obj(0)); } else { return_direct_with_clo1(data, k_73154,__lambda_12, obj_int2obj(1));} ; } static void __lambda_3(void *data, int argc, closure _,object k_73133) { Cyc_st_add(data, "ack.scm:main"); make_utf8_string_with_len(c_73302, "ack:3:12:2", 10, 10); mclosure0(c_73303, (function_type)__lambda_4);c_73303.num_args = 0; mclosure0(c_73311, (function_type)__lambda_7);c_73311.num_args = 1; return_closcall5(data, __glo_run_91r7rs_91benchmark, k_73133, &c_73302, obj_int2obj(2), &c_73303, &c_73311);; } static void __lambda_7(void *data, int argc, object self_73219, object k_73140, object result_7335_7395) { object c_73315 = Cyc_num_fast_eq_op(data,result_7335_7395, obj_int2obj(32765)); return_closcall1(data, k_73140, c_73315);; } static void __lambda_4(void *data, int argc, object self_73216, object k_73141) { closureN_type c_73305; c_73305.hdr.mark = gc_color_red; c_73305.hdr.grayed = 0; c_73305.tag = closureN_tag; c_73305.fn = (function_type)__lambda_5; c_73305.pc = 0; c_73305.num_args = 1; c_73305.num_elements = 1; c_73305.elements = (object *)alloca(sizeof(object) * 1); c_73305.elements[0] = k_73141; return_closcall3(data, __glo_hide, &c_73305, obj_int2obj(2), obj_int2obj(3));; } static void __lambda_5(void *data, int argc, object self_73217, object r_73142) { closureN_type c_73307; c_73307.hdr.mark = gc_color_red; c_73307.hdr.grayed = 0; c_73307.tag = closureN_tag; c_73307.fn = (function_type)__lambda_6; c_73307.pc = 0; c_73307.num_args = 1; c_73307.num_elements = 2; c_73307.elements = (object *)alloca(sizeof(object) * 2); c_73307.elements[0] = ((closureN)self_73217)->elements[0]; c_73307.elements[1] = r_73142; return_closcall3(data, __glo_hide, &c_73307, obj_int2obj(2), obj_int2obj(12));; } static void __lambda_6(void *data, int argc, object self_73218, object r_73143) { return_closcall3(data, __glo_ack, ((closureN)self_73218)->elements[0], ((closureN)self_73218)->elements[1], r_73143);; } static void __lambda_1(void *data, int argc, closure _,object k_73124, object m_731_7385, object n_732_7386) { Cyc_st_add(data, "ack.scm:ack"); object c_73273 = Cyc_num_fast_eq_op(data,m_731_7385, obj_int2obj(0)); if( (boolean_f != c_73273) ){ complex_num_type local_73277; object c_73278 = Cyc_fast_sum(data,&local_73277,n_732_7386, obj_int2obj(1)); return_closcall1(data, k_73124, c_73278); } else { object c_73281 = Cyc_num_fast_eq_op(data,n_732_7386, obj_int2obj(0)); if( (boolean_f != c_73281) ){ complex_num_type local_73285; object c_73286 = Cyc_fast_sub(data,&local_73285,m_731_7385, obj_int2obj(1)); return_closcall3(data, __glo_ack, k_73124, c_73286, obj_int2obj(1)); } else { closureN_type c_73288; c_73288.hdr.mark = gc_color_red; c_73288.hdr.grayed = 0; c_73288.tag = closureN_tag; c_73288.fn = (function_type)__lambda_2; c_73288.pc = 0; c_73288.num_args = 1; c_73288.num_elements = 2; c_73288.elements = (object *)alloca(sizeof(object) * 2); c_73288.elements[0] = k_73124; c_73288.elements[1] = m_731_7385; complex_num_type local_73298; object c_73299 = Cyc_fast_sub(data,&local_73298,n_732_7386, obj_int2obj(1)); return_closcall3(data, __glo_ack, &c_73288, m_731_7385, c_73299);} } ; } static void __lambda_2(void *data, int argc, object self_73215, object r_73129) { complex_num_type local_73293; object c_73294 = Cyc_fast_sub(data,&local_73293,((closureN)self_73215)->elements[1], obj_int2obj(1)); return_closcall3(data, __glo_ack, ((closureN)self_73215)->elements[0], c_73294, r_73129);; } static void c_entry_pt_first_lambda(void *data, int argc, closure cont, object value); extern void c_schemecyclonecommon_entry_pt(void *data, int argc, closure cont, object value); extern void c_schemebase_entry_pt(void *data, int argc, closure cont, object value); extern void c_schemetime_entry_pt(void *data, int argc, closure cont, object value); extern void c_schemewrite_entry_pt(void *data, int argc, closure cont, object value); extern void c_scheme_char_entry_pt(void *data, int argc, closure cont, object value); extern void c_schemeread_entry_pt(void *data, int argc, closure cont, object value); static void c_entry_pt(data, argc, env,cont) void *data; int argc; closure env,cont; { Cyc_set_globals_changed((gc_thread_data *)data); add_global((object *) &__glo_this_91scheme_91implementation_91name); add_global((object *) &__glo_run_91r7rs_91benchmark); add_global((object *) &__glo_hide); add_global((object *) &__glo_main); add_global((object *) &__glo_ack); mclosure0(c_73526, (function_type)__lambda_57);c_73526.num_args = 0; __glo_this_91scheme_91implementation_91name = &c_73526; mclosure0(c_73340, (function_type)__lambda_15);c_73340.num_args = 4; __glo_run_91r7rs_91benchmark = &c_73340; mclosure0(c_73316, (function_type)__lambda_8);c_73316.num_args = 2; __glo_hide = &c_73316; mclosure0(c_73300, (function_type)__lambda_3);c_73300.num_args = 0; __glo_main = &c_73300; mclosure0(c_73270, (function_type)__lambda_1);c_73270.num_args = 2; __glo_ack = &c_73270; make_cvar(cvar_73536, (object *)&__glo_this_91scheme_91implementation_91name);make_pair(pair_73537, find_or_add_symbol("this-scheme-implementation-name"), &cvar_73536); make_cvar(cvar_73538, (object *)&__glo_run_91r7rs_91benchmark);make_pair(pair_73539, find_or_add_symbol("run-r7rs-benchmark"), &cvar_73538); make_cvar(cvar_73540, (object *)&__glo_hide);make_pair(pair_73541, find_or_add_symbol("hide"), &cvar_73540); make_cvar(cvar_73542, (object *)&__glo_main);make_pair(pair_73543, find_or_add_symbol("main"), &cvar_73542); make_cvar(cvar_73544, (object *)&__glo_ack);make_pair(pair_73545, find_or_add_symbol("ack"), &cvar_73544); make_pair(c_73550, &pair_73537,Cyc_global_variables); make_pair(c_73549, &pair_73539, &c_73550); make_pair(c_73548, &pair_73541, &c_73549); make_pair(c_73547, &pair_73543, &c_73548); make_pair(c_73546, &pair_73545, &c_73547); Cyc_global_variables = &c_73546; mclosure1(c_done, c_entry_pt_first_lambda, &c_done); mclosure1(c_73551, c_schemeread_entry_pt, &c_done); mclosure1(c_73552, c_scheme_char_entry_pt, &c_73551); mclosure1(c_73553, c_schemewrite_entry_pt, &c_73552); mclosure1(c_73554, c_schemetime_entry_pt, &c_73553); mclosure1(c_73555, c_schemebase_entry_pt, &c_73554); mclosure1(c_73556, c_schemecyclonecommon_entry_pt, &c_73555); (c_73556.fn)(data, 0, &c_73556, &c_73556); } static void c_entry_pt_first_lambda(void *data, int argc, closure cont, object value) { return_closcall1(data, __glo_main, primitive__75halt); ; } int main(int argc, char **argv, char **envp) {gc_thread_data *thd; long stack_size = global_stack_size = STACK_SIZE; long heap_size = global_heap_size = HEAP_SIZE; mclosure0(clos_halt,&Cyc_halt); // Halt if final closure is reached mclosure0(entry_pt,&c_entry_pt); // First function to execute _cyc_argc = argc; _cyc_argv = argv; set_env_variables(envp); gc_initialize(); thd = malloc(sizeof(gc_thread_data)); gc_thread_data_init(thd, 0, (char *) &stack_size, stack_size); thd->gc_cont = &entry_pt; thd->gc_args[0] = &clos_halt; thd->gc_num_args = 1; thd->thread_id = pthread_self(); gc_add_mutator(thd); Cyc_heap_init(heap_size); thd->thread_state = CYC_THREAD_STATE_RUNNABLE; Cyc_start_trampoline(thd); return 0;}