-
Notifications
You must be signed in to change notification settings - Fork 10
/
icyc.c
1691 lines (1487 loc) · 70.9 KB
/
icyc.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
/**
** This file was automatically generated by the Cyclone scheme compiler
** http://justinethier.github.io/cyclone/
**
** (c) 2014-2024 Justin Ethier
** Version 0.37.0
**
**/
#define closcall1(td, clo, buf) \
if (obj_is_not_closure(clo)) { \
Cyc_apply(td, clo, 1, buf ); \
} else { \
((clo)->fn)(td, clo, 1, buf); \
;\
}
#define return_closcall1(td, clo,a1) { \
char top; \
object buf[1]; buf[0] = a1;\
if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \
GC(td, clo, buf, 1); \
return; \
} else {\
closcall1(td, (closure) (clo), buf); \
return;\
} \
}
#define continue_or_gc1(td, clo,a1) { \
char *top = alloca(sizeof(char)); \
if (stack_overflow(top, (((gc_thread_data *)data)->stack_limit))) { \
object buf[1]; buf[0] = a1;\
GC(td, clo, buf, 1); \
return; \
} else {\
continue;\
} \
}
#define return_direct1(td, _fn,a1) { \
char top; \
object buf[1]; buf[0] = a1; \
if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \
mclosure0(c1, (function_type) _fn); \
GC(td, &c1, buf, 1); \
return; \
} else { \
(_fn)(td, (closure)_fn, 1, buf); \
}}
#define return_direct_with_clo1(td, clo, _fn,a1) { \
char top; \
object buf[1]; buf[0] = a1;\
if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \
GC(td, clo, buf, 1); \
return; \
} else { \
(_fn)(td, (closure)(clo), 1, buf); \
}}
#define closcall2(td, clo, buf) \
if (obj_is_not_closure(clo)) { \
Cyc_apply(td, clo, 2, buf ); \
} else { \
((clo)->fn)(td, clo, 2, buf); \
;\
}
#define return_closcall2(td, clo,a1,a2) { \
char top; \
object buf[2]; buf[0] = a1;buf[1] = a2;\
if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \
GC(td, clo, buf, 2); \
return; \
} else {\
closcall2(td, (closure) (clo), buf); \
return;\
} \
}
#define continue_or_gc2(td, clo,a1,a2) { \
char *top = alloca(sizeof(char)); \
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 {\
continue;\
} \
}
#define return_direct2(td, _fn,a1,a2) { \
char top; \
object buf[2]; buf[0] = a1;buf[1] = a2; \
if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \
mclosure0(c1, (function_type) _fn); \
GC(td, &c1, buf, 2); \
return; \
} else { \
(_fn)(td, (closure)_fn, 2, buf); \
}}
#define return_direct_with_clo2(td, clo, _fn,a1,a2) { \
char top; \
object buf[2]; buf[0] = a1;buf[1] = a2;\
if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \
GC(td, clo, buf, 2); \
return; \
} else { \
(_fn)(td, (closure)(clo), 2, buf); \
}}
#define closcall3(td, clo, buf) \
if (obj_is_not_closure(clo)) { \
Cyc_apply(td, clo, 3, buf ); \
} else { \
((clo)->fn)(td, clo, 3, buf); \
;\
}
#define return_closcall3(td, clo,a1,a2,a3) { \
char top; \
object buf[3]; buf[0] = a1;buf[1] = a2;buf[2] = a3;\
if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \
GC(td, clo, buf, 3); \
return; \
} else {\
closcall3(td, (closure) (clo), buf); \
return;\
} \
}
#define continue_or_gc3(td, clo,a1,a2,a3) { \
char *top = alloca(sizeof(char)); \
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 {\
continue;\
} \
}
#define return_direct3(td, _fn,a1,a2,a3) { \
char top; \
object buf[3]; buf[0] = a1;buf[1] = a2;buf[2] = a3; \
if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \
mclosure0(c1, (function_type) _fn); \
GC(td, &c1, buf, 3); \
return; \
} else { \
(_fn)(td, (closure)_fn, 3, buf); \
}}
#define return_direct_with_clo3(td, clo, _fn,a1,a2,a3) { \
char top; \
object buf[3]; buf[0] = a1;buf[1] = a2;buf[2] = a3;\
if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \
GC(td, clo, buf, 3); \
return; \
} else { \
(_fn)(td, (closure)(clo), 3, buf); \
}}
#define closcall4(td, clo, buf) \
if (obj_is_not_closure(clo)) { \
Cyc_apply(td, clo, 4, buf ); \
} else { \
((clo)->fn)(td, clo, 4, buf); \
;\
}
#define return_closcall4(td, clo,a1,a2,a3,a4) { \
char top; \
object buf[4]; buf[0] = a1;buf[1] = a2;buf[2] = a3;buf[3] = a4;\
if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \
GC(td, clo, buf, 4); \
return; \
} else {\
closcall4(td, (closure) (clo), buf); \
return;\
} \
}
#define continue_or_gc4(td, clo,a1,a2,a3,a4) { \
char *top = alloca(sizeof(char)); \
if (stack_overflow(top, (((gc_thread_data *)data)->stack_limit))) { \
object buf[4]; buf[0] = a1;buf[1] = a2;buf[2] = a3;buf[3] = a4;\
GC(td, clo, buf, 4); \
return; \
} else {\
continue;\
} \
}
#define return_direct4(td, _fn,a1,a2,a3,a4) { \
char top; \
object buf[4]; buf[0] = a1;buf[1] = a2;buf[2] = a3;buf[3] = a4; \
if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \
mclosure0(c1, (function_type) _fn); \
GC(td, &c1, buf, 4); \
return; \
} else { \
(_fn)(td, (closure)_fn, 4, buf); \
}}
#define return_direct_with_clo4(td, clo, _fn,a1,a2,a3,a4) { \
char top; \
object buf[4]; buf[0] = a1;buf[1] = a2;buf[2] = a3;buf[3] = a4;\
if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \
GC(td, clo, buf, 4); \
return; \
} else { \
(_fn)(td, (closure)(clo), 4, buf); \
}}
#include "cyclone/types.h"
object __glo_usage = NULL;
object __glo_collect_91opt_91values = NULL;
extern object __glo__85Cyc_91version_91banner_85_scheme_cyclone_common;
extern object __glo__85version_85_scheme_cyclone_common;
extern object __glo__85version_91number_85_scheme_cyclone_common;
extern object __glo__85version_91name_85_scheme_cyclone_common;
extern object __glo__85version_91banner_85_scheme_cyclone_common;
extern object __glo__85c_91file_91header_91comment_85_scheme_cyclone_common;
extern object __glo__85reader_91source_91db_85_scheme_cyclone_common;
extern object __glo_memloc_scheme_cyclone_common;
extern object __glo_library_127_scheme_cyclone_libraries;
extern object __glo_library_91exists_127_scheme_cyclone_libraries;
extern object __glo_lib_117list_91_125import_91set_scheme_cyclone_libraries;
extern object __glo_lib_117name_scheme_cyclone_libraries;
extern object __glo_lib_117name_91_125string_scheme_cyclone_libraries;
extern object __glo_lib_117name_91_125symbol_scheme_cyclone_libraries;
extern object __glo_lib_117name_91_125unique_91string_scheme_cyclone_libraries;
extern object __glo_lib_117result_scheme_cyclone_libraries;
extern object __glo_lib_117exports_scheme_cyclone_libraries;
extern object __glo_lib_117rename_91exports_scheme_cyclone_libraries;
extern object __glo_lib_117imports_scheme_cyclone_libraries;
extern object __glo_lib_117body_scheme_cyclone_libraries;
extern object __glo_lib_117cond_91expand_scheme_cyclone_libraries;
extern object __glo_lib_117cond_91expand_91decls_scheme_cyclone_libraries;
extern object __glo_lib_117includes_scheme_cyclone_libraries;
extern object __glo_lib_117include_91c_91headers_scheme_cyclone_libraries;
extern object __glo_lib_117inlines_scheme_cyclone_libraries;
extern object __glo_lib_117import_91set_117library_91name_127_scheme_cyclone_libraries;
extern object __glo_lib_117import_91set_91_125import_91set_scheme_cyclone_libraries;
extern object __glo_lib_117import_91_125library_91name_scheme_cyclone_libraries;
extern object __glo_lib_117import_91_125filename_scheme_cyclone_libraries;
extern object __glo_lib_117import_91_125metalist_scheme_cyclone_libraries;
extern object __glo_lib_117import_91_125path_scheme_cyclone_libraries;
extern object __glo_lib_117check_91system_91path_scheme_cyclone_libraries;
extern object __glo_lib_117read_91imports_scheme_cyclone_libraries;
extern object __glo_lib_117read_91includes_scheme_cyclone_libraries;
extern object __glo_lib_117import_91_125export_91list_scheme_cyclone_libraries;
extern object __glo_lib_117import_91set_95exports_91_125imports_scheme_cyclone_libraries;
extern object __glo_lib_117resolve_91meta_scheme_cyclone_libraries;
extern object __glo_lib_117get_91all_scheme_cyclone_libraries;
extern object __glo_lib_117get_91all_91import_91deps_scheme_cyclone_libraries;
extern object __glo_lib_117get_91dep_91list_scheme_cyclone_libraries;
extern object __glo_lib_117c_91linker_91options_scheme_cyclone_libraries;
extern object __glo_lib_117read_91c_91linker_91options_scheme_cyclone_libraries;
extern object __glo_lib_117get_91all_91c_91linker_91options_scheme_cyclone_libraries;
extern object __glo_lib_117c_91compiler_91options_scheme_cyclone_libraries;
extern object __glo_lib_117read_91c_91compiler_91options_scheme_cyclone_libraries;
extern object __glo_lib_117get_91all_91c_91compiler_91options_scheme_cyclone_libraries;
extern object __glo_lib_117imports_91_125idb_scheme_cyclone_libraries;
extern object __glo_lib_117idb_117ids_scheme_cyclone_libraries;
extern object __glo_lib_117idb_117lookup_scheme_cyclone_libraries;
extern object __glo_lib_117idb_117entry_91_125library_91name_scheme_cyclone_libraries;
extern object __glo_lib_117idb_117entry_91_125library_91id_scheme_cyclone_libraries;
extern object __glo_pretty_91print_scheme_cyclone_pretty_91print;
extern object __glo_define_91syntax_127_scheme_cyclone_util;
extern object __glo_let_91syntax_127_scheme_cyclone_util;
extern object __glo_letrec_91syntax_127_scheme_cyclone_util;
extern object __glo_tagged_91list_127_scheme_cyclone_util;
extern object __glo_if_127_scheme_cyclone_util;
extern object __glo_if_91syntax_127_scheme_cyclone_util;
extern object __glo_begin_127_scheme_cyclone_util;
extern object __glo_lambda_127_scheme_cyclone_util;
extern object __glo_pair_91_125list_scheme_cyclone_util;
extern object __glo_define_91lambda_127_scheme_cyclone_util;
extern object __glo_define_91_125lambda_scheme_cyclone_util;
extern object __glo_formals_91_125list_scheme_cyclone_util;
extern object __glo_lambda_91formals_91_125list_scheme_cyclone_util;
extern object __glo_lambda_91varargs_127_scheme_cyclone_util;
extern object __glo_lambda_91_125formals_scheme_cyclone_util;
extern object __glo_lambda_91_125exp_scheme_cyclone_util;
extern object __glo_lambda_91formals_91type_scheme_cyclone_util;
extern object __glo_lambda_91varargs_91var_scheme_cyclone_util;
extern object __glo_pack_91lambda_91arguments_scheme_cyclone_util;
extern object __glo_if_91_125condition_scheme_cyclone_util;
extern object __glo_if_91_125then_scheme_cyclone_util;
extern object __glo_if_91else_127_scheme_cyclone_util;
extern object __glo_if_91_125else_scheme_cyclone_util;
extern object __glo_const_127_scheme_cyclone_util;
extern object __glo_ref_127_scheme_cyclone_util;
extern object __glo_quote_127_scheme_cyclone_util;
extern object __glo_define_91c_127_scheme_cyclone_util;
extern object __glo_set_67_127_scheme_cyclone_util;
extern object __glo_set_67_91_125var_scheme_cyclone_util;
extern object __glo_set_67_91_125exp_scheme_cyclone_util;
extern object __glo_define_127_scheme_cyclone_util;
extern object __glo_define_91_125var_scheme_cyclone_util;
extern object __glo_define_91_125exp_scheme_cyclone_util;
extern object __glo_app_127_scheme_cyclone_util;
extern object __glo_env_117enclosing_91environment_scheme_cyclone_util;
extern object __glo_env_117first_91frame_scheme_cyclone_util;
extern object __glo_env_117the_91empty_91environment_scheme_cyclone_util;
extern object __glo_env_117make_91frame_scheme_cyclone_util;
extern object __glo_env_117frame_91variables_scheme_cyclone_util;
extern object __glo_env_117frame_91values_scheme_cyclone_util;
extern object __glo_env_117add_91binding_91to_91frame_67_scheme_cyclone_util;
extern object __glo_env_117all_91variables_scheme_cyclone_util;
extern object __glo_env_117all_91values_scheme_cyclone_util;
extern object __glo_env_117extend_91environment_scheme_cyclone_util;
extern object __glo_env_117lookup_scheme_cyclone_util;
extern object __glo_env_117lookup_91variable_91value_scheme_cyclone_util;
extern object __glo_env_117_191lookup_91variable_91value_scheme_cyclone_util;
extern object __glo_env_117set_91variable_91value_67_scheme_cyclone_util;
extern object __glo_env_117define_91variable_67_scheme_cyclone_util;
extern object __glo_make_91syntactic_91closure_scheme_cyclone_util;
extern object __glo_strip_91syntactic_91closures_scheme_cyclone_util;
extern object __glo_identifier_91_125symbol_scheme_cyclone_util;
extern object __glo_identifier_127_scheme_cyclone_util;
extern object __glo_identifier_123_127_scheme_cyclone_util;
extern object __glo_Cyc_91er_91rename_scheme_cyclone_util;
extern object __glo_Cyc_91er_91compare_127_scheme_cyclone_util;
extern object __glo_mangle_scheme_cyclone_util;
extern object __glo_mangle_91global_scheme_cyclone_util;
extern object __glo_define_91c_91inline_127_scheme_cyclone_util;
extern object __glo_define_91c_91_125inline_91var_scheme_cyclone_util;
extern object __glo_Cyc_91set_91immutable_67_scheme_cyclone_util;
extern object __glo_string_91join_scheme_cyclone_util;
extern object __glo_string_91split_scheme_cyclone_util;
extern object __glo_gensym_scheme_cyclone_util;
extern object __glo_delete_scheme_cyclone_util;
extern object __glo_delete_91duplicates_scheme_cyclone_util;
extern object __glo_flatten_scheme_cyclone_util;
extern object __glo_length_95obj_scheme_cyclone_util;
extern object __glo_list_91index2_scheme_cyclone_util;
extern object __glo_list_91insert_91at_67_scheme_cyclone_util;
extern object __glo_list_91prefix_127_scheme_cyclone_util;
extern object __glo_string_91replace_91all_scheme_cyclone_util;
extern object __glo_take_scheme_cyclone_util;
extern object __glo_drop_scheme_cyclone_util;
extern object __glo_filter_scheme_cyclone_util;
extern object __glo_current_91expand_91filepath_scheme_cyclone_util;
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_91constructor_95args_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_make_91record_91marker_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_fast_91string_123_127_scheme_base;
extern object __glo_fast_91string_121_127_scheme_base;
extern object __glo_fast_91string_121_123_127_scheme_base;
extern object __glo_fast_91string_125_127_scheme_base;
extern object __glo_fast_91string_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_91map_91loop_912_scheme_base;
extern object __glo_Cyc_91for_91each_91loop_911_scheme_base;
extern object __glo_Cyc_91for_91each_91loop_912_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_95loc_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_write_91string_911_scheme_base;
extern object __glo_write_91string_912_scheme_base;
extern object __glo_flush_91output_91port_scheme_base;
extern object __glo_char_91ready_127_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_91add_91feature_67_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_define_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__void_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_read_91bytevector_scheme_base;
extern object __glo_read_91bytevector_67_scheme_base;
extern object __glo_write_91bytevector_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_binary_91port_127_scheme_base;
extern object __glo_textual_91port_127_scheme_base;
extern object __glo_rationalize_scheme_base;
extern object __glo_char_91alphabetic_127_scheme__char;
extern object __glo_char_91downcase_scheme__char;
extern object __glo_char_91foldcase_scheme__char;
extern object __glo_char_91lower_91case_127_scheme__char;
extern object __glo_char_91numeric_127_scheme__char;
extern object __glo_char_91upcase_scheme__char;
extern object __glo_char_91upper_91case_127_scheme__char;
extern object __glo_char_91whitespace_127_scheme__char;
extern object __glo_char_91ci_121_123_127_scheme__char;
extern object __glo_char_91ci_121_127_scheme__char;
extern object __glo_char_91ci_123_127_scheme__char;
extern object __glo_char_91ci_125_123_127_scheme__char;
extern object __glo_char_91ci_125_127_scheme__char;
extern object __glo_digit_91value_scheme__char;
extern object __glo_string_91upcase_scheme__char;
extern object __glo_string_91downcase_scheme__char;
extern object __glo_string_91foldcase_scheme__char;
extern object __glo_string_91ci_121_123_127_scheme__char;
extern object __glo_string_91ci_121_127_scheme__char;
extern object __glo_string_91ci_123_127_scheme__char;
extern object __glo_string_91ci_125_123_127_scheme__char;
extern object __glo_string_91ci_125_127_scheme__char;
extern object __glo_delay_scheme_lazy;
extern object __glo_force_scheme_lazy;
extern object __glo_delay_91force_scheme_lazy;
extern object __glo_make_91promise_scheme_lazy;
extern object __glo_promise_127_scheme_lazy;
extern object __glo_load_scheme_load;
extern object __glo_read_scheme_read;
extern object __glo_read_91all_scheme_read;
extern object __glo_read_91all_95source_scheme_read;
extern object __glo_include_scheme_read;
extern object __glo_include_91ci_scheme_read;
extern object __glo_interaction_91environment_scheme_repl;
extern object __glo_repl_scheme_repl;
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_acos_scheme_inexact;
extern object __glo_asin_scheme_inexact;
extern object __glo_atan_scheme_inexact;
extern object __glo_cos_scheme_inexact;
extern object __glo_exp_scheme_inexact;
extern object __glo_finite_127_scheme_inexact;
extern object __glo_infinite_127_scheme_inexact;
extern object __glo_log_scheme_inexact;
extern object __glo_nan_127_scheme_inexact;
extern object __glo_sin_scheme_inexact;
extern object __glo_sqrt_scheme_inexact;
extern object __glo_tan_scheme_inexact;
extern object __glo_command_91line_scheme_process_91context;
extern object __glo_emergency_91exit_scheme_process_91context;
extern object __glo_get_91environment_91variable_scheme_process_91context;
extern object __glo_get_91environment_91variables_scheme_process_91context;
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_eval_scheme_eval;
extern object __glo_eval_91from_91c_scheme_eval;
extern object __glo_create_91environment_scheme_eval;
extern object __glo_setup_91environment_scheme_eval;
extern object __glo__75import_scheme_eval;
extern object __glo_imported_127_scheme_eval;
extern object __glo__75set_91import_91dirs_67_scheme_eval;
extern object __glo_import_91shared_91object_scheme_eval;
extern object __glo__85defined_91macros_85_scheme_eval;
extern object __glo_get_91macros_scheme_eval;
extern object __glo_macro_117macro_127_scheme_eval;
extern object __glo_macro_117expand_scheme_eval;
extern object __glo_macro_117add_67_scheme_eval;
extern object __glo_macro_117cleanup_scheme_eval;
extern object __glo_macro_117load_91env_67_scheme_eval;
extern object __glo_macro_117get_91env_scheme_eval;
extern object __glo_macro_117get_91defined_91macros_scheme_eval;
extern object __glo_expand_scheme_eval;
extern object __glo_expand_91lambda_91body_scheme_eval;
extern object __glo_make_91hash_91table_srfi_69;
extern object __glo_hash_91table_127_srfi_69;
extern object __glo_alist_91_125hash_91table_srfi_69;
extern object __glo_hash_91table_91equivalence_91function_srfi_69;
extern object __glo_hash_91table_91hash_91function_srfi_69;
extern object __glo_hash_91table_91ref_srfi_69;
extern object __glo_hash_91table_91ref_95default_srfi_69;
extern object __glo_hash_91table_91set_67_srfi_69;
extern object __glo_hash_91table_91delete_67_srfi_69;
extern object __glo_hash_91table_91exists_127_srfi_69;
extern object __glo_hash_91table_91update_67_srfi_69;
extern object __glo_hash_91table_91update_67_95default_srfi_69;
extern object __glo_hash_91table_91size_srfi_69;
extern object __glo_hash_91table_91keys_srfi_69;
extern object __glo_hash_91table_91values_srfi_69;
extern object __glo_hash_91table_91walk_srfi_69;
extern object __glo_hash_91table_91fold_srfi_69;
extern object __glo_hash_91table_91_125alist_srfi_69;
extern object __glo_hash_91table_91copy_srfi_69;
extern object __glo_hash_91table_91merge_67_srfi_69;
extern object __glo_hash_srfi_69;
extern object __glo_string_91hash_srfi_69;
extern object __glo_string_91ci_91hash_srfi_69;
extern object __glo_hash_91by_91identity_srfi_69;
extern object __glo_Cyc_91memoize_srfi_69;
extern object __glo_lib_117import_91set_91_125import_91set_191_191inline_191_191_scheme_cyclone_libraries;
extern object __glo_lib_117idb_117entry_91_125library_91name_191_191inline_191_191_scheme_cyclone_libraries;
extern object __glo_tagged_91list_127_191_191inline_191_191_scheme_cyclone_util;
extern object __glo_if_91_125condition_191_191inline_191_191_scheme_cyclone_util;
extern object __glo_if_91_125then_191_191inline_191_191_scheme_cyclone_util;
extern object __glo_if_91_125else_191_191inline_191_191_scheme_cyclone_util;
extern object __glo_app_127_191_191inline_191_191_scheme_cyclone_util;
extern object __glo_ref_127_191_191inline_191_191_scheme_cyclone_util;
extern object __glo_set_67_91_125var_191_191inline_191_191_scheme_cyclone_util;
extern object __glo_set_67_91_125exp_191_191inline_191_191_scheme_cyclone_util;
extern object __glo_define_91_125exp_191_191inline_191_191_scheme_cyclone_util;
extern object __glo_lambda_91_125formals_191_191inline_191_191_scheme_cyclone_util;
extern object __glo_lambda_91_125exp_191_191inline_191_191_scheme_cyclone_util;
extern object __glo_env_117enclosing_91environment_191_191inline_191_191_scheme_cyclone_util;
extern object __glo_env_117first_91frame_191_191inline_191_191_scheme_cyclone_util;
extern object __glo_env_117frame_91variables_191_191inline_191_191_scheme_cyclone_util;
extern object __glo_env_117frame_91values_191_191inline_191_191_scheme_cyclone_util;
extern object __glo_fast_91string_123_127_191_191inline_191_191_scheme_base;
extern object __glo_fast_91string_121_127_191_191inline_191_191_scheme_base;
extern object __glo_fast_91string_121_123_127_191_191inline_191_191_scheme_base;
extern object __glo_fast_91string_125_127_191_191inline_191_191_scheme_base;
extern object __glo_fast_91string_125_123_127_191_191inline_191_191_scheme_base;
extern object __glo__75write_91bytevector_191_191inline_191_191_scheme_base;
extern object __glo_not_191_191inline_191_191_scheme_base;
extern object __glo_list_127_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_exact_191_191inline_191_191_scheme_base;
extern object __glo_inexact_191_191inline_191_191_scheme_base;
extern object __glo__191sqrt_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_fixnum_127_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_void_191_191inline_191_191_scheme_base;
extern object __glo_make_91record_91marker_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;
extern object __glo_Cyc_91opaque_91_125string_191_191inline_191_191_scheme_read;
extern object __glo_variable_127_191_191inline_191_191_scheme_eval;
extern object __glo_assignment_91variable_191_191inline_191_191_scheme_eval;
extern object __glo_assignment_91value_191_191inline_191_191_scheme_eval;
extern object __glo_definition_91variable_191_191inline_191_191_scheme_eval;
extern object __glo_lambda_91parameters_191_191inline_191_191_scheme_eval;
extern object __glo_lambda_91body_191_191inline_191_191_scheme_eval;
extern object __glo_if_91predicate_191_191inline_191_191_scheme_eval;
extern object __glo_if_91consequent_191_191inline_191_191_scheme_eval;
extern object __glo_if_91alternative_191_191inline_191_191_scheme_eval;
extern object __glo_application_127_191_191inline_191_191_scheme_eval;
extern object __glo_operator_191_191inline_191_191_scheme_eval;
extern object __glo_operands_191_191inline_191_191_scheme_eval;
extern object __glo_procedure_91parameters_191_191inline_191_191_scheme_eval;
extern object __glo_procedure_91body_191_191inline_191_191_scheme_eval;
extern object __glo_procedure_91environment_191_191inline_191_191_scheme_eval;
extern object __glo_primitive_91implementation_191_191inline_191_191_scheme_eval;
extern object __glo_macro_117macro_127_191_191inline_191_191_scheme_eval;
extern object __glo_symbol_91hash_191_191inline_191_191_srfi_69;
#include "cyclone/runtime.h"
#include "cyclone/runtime-main.h"
defsymbol(begin);
static void __lambda_7(void *data, object clo, int argc, object *args) ;/*closure _,object args_7314_7362_7376*/
static void __lambda_8(void *data, object clo, int argc, object *args) ;/*object self_73154, object append_91dirs_7317_7363_7377*/
static void __lambda_9(void *data, object clo, int argc, object *args) ;/*object self_73155, object prepend_91dirs_7320_7364_7378*/
static void __lambda_10(void *data, object clo, int argc, object *args) ;/*object self_73156, object run_91as_91script_7323_7365_7379*/
static void __lambda_40(void *data, object clo, int argc, object *args) ;/*object self_73157, object run_91as_91script_7323_7365_7379*/
static void __lambda_13(void *data, object clo, int argc, object *args) ;/*object self_73158, object r_73108*/
static void __lambda_15(void *data, object clo, int argc, object *args) ;/*object self_73159, object r_73109*/
static void __lambda_39(void *data, object clo, int argc, object *args) ;/*object self_73160, object r_73104*/
static void __lambda_16(void *data, object clo, int argc, object *args) ;/*object self_73161, object k_73110*/
static void __lambda_17(void *data, object clo, int argc, object *args) ;/*object self_73162, object r_73111*/
static void __lambda_25(void *data, object clo, int argc, object *args) ;/*object self_73170, object tmp_7351_7353_7371_7385*/
static void __lambda_26(void *data, object clo, int argc, object *args) ;/*object self_73171, object r_73123*/
static void __lambda_27(void *data, object clo, int argc, object *args) ;/*object self_73172, object r_73124*/
static void __lambda_30(void *data, object clo, int argc, object *args) ;/*object self_73174, object r_73126*/
static void __lambda_38(void *data, object clo, int argc, object *args) ;/*object self_73175, object r_73127*/
static void __lambda_31(void *data, object clo, int argc, object *args) ;/*object self_73176, object k_73128*/
static void __lambda_36(void *data, object clo, int argc, object *args) ;/*object self_73177, object r_73129*/
static void __lambda_37(void *data, object clo, int argc, object *args) ;/*object self_73178, object r_73131*/
static void __lambda_32(void *data, object clo, int argc, object *args) ;/*object self_73179, object k_73132*/
static void __lambda_33(void *data, object clo, int argc, object *args) ;/*object self_73180, object r_73138*/
static void __lambda_34(void *data, object clo, int argc, object *args) ;/*object self_73181, object r_73137*/
static void __lambda_35(void *data, object clo, int argc, object *args) ;/*object self_73182, object r_73134*/
static void __lambda_29(void *data, object clo, int argc, object *args) ;/*object self_73183, object k_73139*/
static void __lambda_28(void *data, object clo, int argc, object *args) ;/*object self_73173, object r_73125*/
static void __lambda_18(void *data, object clo, int argc, object *args) ;/*object self_73163, object sexp_91strs_7332_7367_7381*/
static void __lambda_19(void *data, object clo, int argc, object *args) ;/*object self_73164, object sexp_91str_7339_7368_7382*/
static void __lambda_20(void *data, object clo, int argc, object *args) ;/*object self_73165, object in_91port_7342_7369_7383*/
static void __lambda_21(void *data, object clo, int argc, object *args) ;/*object self_73166, object r_73121*/
static void __lambda_22(void *data, object clo, int argc, object *args) ;/*object self_73167, object r_73119*/
static void __lambda_23(void *data, object clo, int argc, object *args) ;/*object self_73168, object r_73117*/
static void __lambda_24(void *data, object clo, int argc, object *args) ;/*object self_73169, object r_73118*/
static void __lambda_14(void *data, object clo, int argc, object *args) ;/*object self_73184, object k_73142*/
static void __lambda_11(void *data, object clo, int argc, object *args) ;/*object self_73185, object k_73148*/
static void __lambda_12(void *data, object clo, int argc, object *args) ;/*object self_73186, object r_73149*/
static void __lambda_5(void *data, object clo, int argc, object *args) ;/*closure _,object k_73101*/
static void __lambda_6(void *data, object clo, int argc, object *args) ;/*object self_73153, object r_73102*/
static void __lambda_1(void *data, object clo, int argc, object *args) ;/*closure _,object k_7388, object args_731_7372, object opt_732_7373*/
static void __lambda_4(void *data, object clo, int argc, object *args) ;/*object self_73150, object k_7392, object arg_733_7374, object accum_734_7375*/
static void __lambda_2(void *data, object clo, int argc, object *args) ;/*object self_73151, object r_7390*/
static void __lambda_3(void *data, object clo, int argc, object *args) ;/*object self_73152, object r_7389*/
static void __lambda_7(void *data, object _, int argc, object *args) /* closure _,object args_7314_7362_7376 */
{
object args_7314_7362_7376 = args[0];
closureN_type c_73240;
object e_73455 [1];
c_73240.hdr.mark = gc_color_red;
c_73240.hdr.grayed = 0;
c_73240.tag = closureN_tag;
c_73240.fn = (function_type)__lambda_8;
c_73240.num_args = 1;
c_73240.num_elements = 1;
c_73240.elements = (object *)e_73455;
c_73240.elements[0] = args_7314_7362_7376;
make_utf8_string_with_len(c_73456, "-A", 2, 2);
return_direct_with_clo3(data, __glo_collect_91opt_91values, (((closure) __glo_collect_91opt_91values)->fn), &c_73240, args_7314_7362_7376, &c_73456);;
}
static void __lambda_8(void *data, object self_73154, int argc, object *args) /* object self_73154, object append_91dirs_7317_7363_7377 */
{
object append_91dirs_7317_7363_7377 = args[0];
closureN_type c_73242;
object e_73452 [2];
c_73242.hdr.mark = gc_color_red;
c_73242.hdr.grayed = 0;
c_73242.tag = closureN_tag;
c_73242.fn = (function_type)__lambda_9;
c_73242.num_args = 1;
c_73242.num_elements = 2;
c_73242.elements = (object *)e_73452;
c_73242.elements[0] = append_91dirs_7317_7363_7377;
c_73242.elements[1] = ((closureN)self_73154)->elements[0];
make_utf8_string_with_len(c_73454, "-I", 2, 2);
return_direct_with_clo3(data, __glo_collect_91opt_91values, (((closure) __glo_collect_91opt_91values)->fn), &c_73242, ((closureN)self_73154)->elements[0], &c_73454);;
}
static void __lambda_9(void *data, object self_73155, int argc, object *args) /* object self_73155, object prepend_91dirs_7320_7364_7378 */
{
object prepend_91dirs_7320_7364_7378 = args[0];
closureN_type c_73244;
object e_73451 [3];
c_73244.hdr.mark = gc_color_red;
c_73244.hdr.grayed = 0;
c_73244.tag = closureN_tag;
c_73244.fn = (function_type)__lambda_10;
c_73244.num_args = 1;
c_73244.num_elements = 3;
c_73244.elements = (object *)e_73451;
c_73244.elements[0] = ((closureN)self_73155)->elements[0];
c_73244.elements[1] = ((closureN)self_73155)->elements[1];
c_73244.elements[2] = prepend_91dirs_7320_7364_7378;
return_direct_with_clo1(data,(closure)&c_73244,__lambda_10, boolean_f);;
}
static void __lambda_10(void *data, object self_73156, int argc, object *args) /* object self_73156, object run_91as_91script_7323_7365_7379 */
{
object run_91as_91script_7323_7365_7379 = args[0];
closureN_type c_73246;
object e_73447 [3];
c_73246.hdr.mark = gc_color_red;
c_73246.hdr.grayed = 0;
c_73246.tag = closureN_tag;
c_73246.fn = (function_type)__lambda_40;
c_73246.num_args = 1;
c_73246.num_elements = 3;
c_73246.elements = (object *)e_73447;
c_73246.elements[0] = ((closureN)self_73156)->elements[0];
c_73246.elements[1] = ((closureN)self_73156)->elements[1];
c_73246.elements[2] = ((closureN)self_73156)->elements[2];
pair_type local_73450;
return_direct_with_clo1(data,(closure)&c_73246,__lambda_40, set_cell_as_expr(&local_73450, run_91as_91script_7323_7365_7379));;
}
static void __lambda_40(void *data, object self_73157, int argc, object *args) /* object self_73157, object run_91as_91script_7323_7365_7379 */
{
object run_91as_91script_7323_7365_7379 = args[0];
closureN_type c_73248;
object e_73263 [2];
c_73248.hdr.mark = gc_color_red;
c_73248.hdr.grayed = 0;
c_73248.tag = closureN_tag;
c_73248.fn = (function_type)__lambda_11;
c_73248.num_args = 0;
c_73248.num_elements = 2;
c_73248.elements = (object *)e_73263;
c_73248.elements[0] = ((closureN)self_73157)->elements[1];
c_73248.elements[1] = run_91as_91script_7323_7365_7379;
closureN_type c_73264;
object e_73446 [4];
c_73264.hdr.mark = gc_color_red;
c_73264.hdr.grayed = 0;
c_73264.tag = closureN_tag;
c_73264.fn = (function_type)__lambda_13;
c_73264.num_args = 1;
c_73264.num_elements = 4;
c_73264.elements = (object *)e_73446;
c_73264.elements[0] = ((closureN)self_73157)->elements[0];
c_73264.elements[1] = ((closureN)self_73157)->elements[1];
c_73264.elements[2] = ((closureN)self_73157)->elements[2];
c_73264.elements[3] = run_91as_91script_7323_7365_7379;
return_direct_with_clo1(data,(closure)&c_73248,__lambda_11, &c_73264);;
}
static void __lambda_13(void *data, object self_73158, int argc, object *args) /* object self_73158, object r_73108 */
{
closureN_type c_73266;
object e_73292 [2];
c_73266.hdr.mark = gc_color_red;
c_73266.hdr.grayed = 0;
c_73266.tag = closureN_tag;
c_73266.fn = (function_type)__lambda_14;
c_73266.num_args = 0;
c_73266.num_elements = 2;
c_73266.elements = (object *)e_73292;
c_73266.elements[0] = ((closureN)self_73158)->elements[0];
c_73266.elements[1] = ((closureN)self_73158)->elements[2];
closureN_type c_73293;
object e_73445 [2];
c_73293.hdr.mark = gc_color_red;
c_73293.hdr.grayed = 0;
c_73293.tag = closureN_tag;
c_73293.fn = (function_type)__lambda_15;
c_73293.num_args = 1;
c_73293.num_elements = 2;
c_73293.elements = (object *)e_73445;
c_73293.elements[0] = ((closureN)self_73158)->elements[1];
c_73293.elements[1] = ((closureN)self_73158)->elements[3];
return_direct_with_clo1(data,(closure)&c_73266,__lambda_14, &c_73293);;
}
static void __lambda_15(void *data, object self_73159, int argc, object *args) /* object self_73159, object r_73109 */
{
closureN_type c_73295;
object e_73439 [2];
c_73295.hdr.mark = gc_color_red;
c_73295.hdr.grayed = 0;
c_73295.tag = closureN_tag;
c_73295.fn = (function_type)__lambda_16;
c_73295.num_args = 0;
c_73295.num_elements = 2;
c_73295.elements = (object *)e_73439;
c_73295.elements[0] = ((closureN)self_73159)->elements[0];
c_73295.elements[1] = ((closureN)self_73159)->elements[1];
mclosure0(c_73440, (function_type)__lambda_39);c_73440.num_args = 1;
return_direct_with_clo1(data,(closure)&c_73295,__lambda_16, &c_73440);;
}
static void __lambda_39(void *data, object self_73160, int argc, object *args) /* object self_73160, object r_73104 */
{
__halt(__halt(obj_int2obj(0)));;
}
static void __lambda_16(void *data, object self_73161, int argc, object *args) /* object self_73161, object k_73110 */
{
object k_73110 = args[0];
closureN_type c_73297;
object e_73434 [3];
c_73297.hdr.mark = gc_color_red;
c_73297.hdr.grayed = 0;
c_73297.tag = closureN_tag;
c_73297.fn = (function_type)__lambda_17;
c_73297.num_args = 1;
c_73297.num_elements = 3;
c_73297.elements = (object *)e_73434;
c_73297.elements[0] = ((closureN)self_73161)->elements[0];
c_73297.elements[1] = k_73110;
c_73297.elements[2] = ((closureN)self_73161)->elements[1];
make_utf8_string_with_len(c_73437, "-p", 2, 2);
return_direct_with_clo1(data,(closure)&c_73297,__lambda_17, memberp(data, &c_73437, ((closureN)self_73161)->elements[0]));;
}
static void __lambda_17(void *data, object self_73162, int argc, object *args) /* object self_73162, object r_73111 */
{
object r_73111 = args[0];
if( (boolean_f != r_73111) ){
closureN_type c_73299;
object e_73333 [1];
c_73299.hdr.mark = gc_color_red;
c_73299.hdr.grayed = 0;
c_73299.tag = closureN_tag;
c_73299.fn = (function_type)__lambda_18;
c_73299.num_args = 1;
c_73299.num_elements = 1;
c_73299.elements = (object *)e_73333;
c_73299.elements[0] = ((closureN)self_73162)->elements[1];
make_utf8_string_with_len(c_73335, "-p", 2, 2);
return_direct_with_clo3(data, __glo_collect_91opt_91values, (((closure) __glo_collect_91opt_91values)->fn), &c_73299, ((closureN)self_73162)->elements[0], &c_73335);
} else {
closureN_type c_73337;
object e_73429 [3];
c_73337.hdr.mark = gc_color_red;
c_73337.hdr.grayed = 0;
c_73337.tag = closureN_tag;
c_73337.fn = (function_type)__lambda_25;
c_73337.num_args = 1;
c_73337.num_elements = 3;
c_73337.elements = (object *)e_73429;
c_73337.elements[0] = ((closureN)self_73162)->elements[0];
c_73337.elements[1] = ((closureN)self_73162)->elements[1];
c_73337.elements[2] = ((closureN)self_73162)->elements[2];
make_utf8_string_with_len(c_73432, "-h", 2, 2);
return_direct_with_clo1(data,(closure)&c_73337,__lambda_25, memberp(data, &c_73432, ((closureN)self_73162)->elements[0]));}
;;
}
static void __lambda_25(void *data, object self_73170, int argc, object *args) /* object self_73170, object tmp_7351_7353_7371_7385 */
{
object tmp_7351_7353_7371_7385 = args[0];
object r_73122;
if( (boolean_f != tmp_7351_7353_7371_7385) ){
r_73122 = tmp_7351_7353_7371_7385;
} else {