/*===========================================================================*/
/*   (BackEnd/c-main.scm)                                                    */
/*   Bigloo (2.6b)                                                           */
/*   Inria -- Sophia Antipolis (c)       Mon Dec 15 12:14:36 CET 2003        */
/*===========================================================================*/
/* COMPILATION: (/users/serrano/prgm/project/bigloo/bin/bigloo -q -afile .afile -fsharing -fno-reflection -cc gcc-2.95 -lib-dir /users/serrano/prgm/project/bigloo/lib/2.6b -unsafev -no-hello -O2 -rm -unsafe -s -indent BackEnd/c-main.scm)*/
/* GC selection */
#define THE_GC BOEHM_GC

#include <bigloo.h>


/* Object type definitions */
typedef struct BgL_ccompz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_idz00;
   obj_t BgL_producerz00;
   obj_t BgL_consumerz00;
   obj_t BgL_finaliza7erza7;
} *BgL_ccompz00_bglt;

typedef struct BgL_typez00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_idz00;
   obj_t BgL_namez00;
   obj_t BgL_siza7eza7;
   obj_t BgL_classz00;
   obj_t BgL_coercezd2tozd2;
   obj_t BgL_parentsz00;
   bool_t BgL_initzf3zf3;
   bool_t BgL_magiczf3zf3;
   obj_t BgL_z42z42;
   obj_t BgL_aliasz00;
   obj_t BgL_pointedzd2tozd2byz00;
   obj_t BgL_tvectorz00;
   obj_t BgL_locationz00;
   obj_t BgL_importzd2locationzd2;
} *BgL_typez00_bglt;

typedef struct BgL_valuez00_bgl {
   header_t header;
   obj_t widening;
} *BgL_valuez00_bglt;

typedef struct BgL_variablez00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_idz00;
   obj_t BgL_namez00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_valuez00_bgl * BgL_valuez00;
   obj_t BgL_accessz00;
   obj_t BgL_fastzd2alphazd2;
   obj_t BgL_removablez00;
   long BgL_occurrencez00;
} *BgL_variablez00_bglt;

typedef struct BgL_globalz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_idz00;
   obj_t BgL_namez00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_valuez00_bgl * BgL_valuez00;
   obj_t BgL_accessz00;
   obj_t BgL_fastzd2alphazd2;
   obj_t BgL_removablez00;
   long BgL_occurrencez00;
   obj_t BgL_modulez00;
   obj_t BgL_importz00;
   bool_t BgL_evaluablezf3zf3;
   bool_t BgL_libraryzf3zf3;
   bool_t BgL_userzf3zf3;
   obj_t BgL_pragmaz00;
   obj_t BgL_srcz00;
   obj_t BgL_jvmzd2typezd2namez00;
} *BgL_globalz00_bglt;

typedef struct BgL_localz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_idz00;
   obj_t BgL_namez00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_valuez00_bgl * BgL_valuez00;
   obj_t BgL_accessz00;
   obj_t BgL_fastzd2alphazd2;
   obj_t BgL_removablez00;
   long BgL_occurrencez00;
   bool_t BgL_userzf3zf3;
   long BgL_keyz00;
} *BgL_localz00_bglt;

typedef struct BgL_funz00_bgl {
   header_t header;
   obj_t widening;
   long BgL_arityz00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_predicatezd2ofzd2;
   obj_t BgL_stackzd2allocatorzd2;
   bool_t BgL_topzf3zf3;
   obj_t BgL_thezd2closurezd2;
   obj_t BgL_effectz00;
} *BgL_funz00_bglt;

typedef struct BgL_sfunz00_bgl {
   header_t header;
   obj_t widening;
   long BgL_arityz00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_predicatezd2ofzd2;
   obj_t BgL_stackzd2allocatorzd2;
   bool_t BgL_topzf3zf3;
   obj_t BgL_thezd2closurezd2;
   obj_t BgL_effectz00;
   obj_t BgL_propertyz00;
   obj_t BgL_argsz00;
   obj_t BgL_bodyz00;
   obj_t BgL_classz00;
   obj_t BgL_dssslzd2keywordszd2;
   obj_t BgL_locz00;
} *BgL_sfunz00_bglt;

typedef struct BgL_cfunz00_bgl {
   header_t header;
   obj_t widening;
   long BgL_arityz00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_predicatezd2ofzd2;
   obj_t BgL_stackzd2allocatorzd2;
   bool_t BgL_topzf3zf3;
   obj_t BgL_thezd2closurezd2;
   obj_t BgL_effectz00;
   obj_t BgL_argszd2typezd2;
   bool_t BgL_macrozf3zf3;
   bool_t BgL_infixzf3zf3;
   obj_t BgL_methodz00;
} *BgL_cfunz00_bglt;

typedef struct BgL_svarz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
} *BgL_svarz00_bglt;

typedef struct BgL_scnstz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_nodez00;
   obj_t BgL_classz00;
   obj_t BgL_locz00;
} *BgL_scnstz00_bglt;

typedef struct BgL_cvarz00_bgl {
   header_t header;
   obj_t widening;
   bool_t BgL_macrozf3zf3;
} *BgL_cvarz00_bglt;

typedef struct BgL_sexitz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_handlerz00;
   bool_t BgL_detachedzf3zf3;
} *BgL_sexitz00_bglt;

typedef struct BgL_feffectz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_readz00;
   obj_t BgL_writez00;
} *BgL_feffectz00_bglt;

typedef struct BgL_nodez00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
} *BgL_nodez00_bglt;

typedef struct BgL_nodezf2effectzf2_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
} *BgL_nodezf2effectzf2_bglt;

typedef struct BgL_atomz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_valuez00;
} *BgL_atomz00_bglt;

typedef struct BgL_varz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_variablez00_bgl * BgL_variablez00;
} *BgL_varz00_bglt;

typedef struct BgL_closurez00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_variablez00_bgl * BgL_variablez00;
} *BgL_closurez00_bglt;

typedef struct BgL_kwotez00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_valuez00;
} *BgL_kwotez00_bglt;

typedef struct BgL_sequencez00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_nodesz00;
} *BgL_sequencez00_bglt;

typedef struct BgL_appz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   struct BgL_varz00_bgl * BgL_funz00;
   obj_t BgL_argsz00;
} *BgL_appz00_bglt;

typedef struct BgL_appzd2lyzd2_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_nodez00_bgl * BgL_funz00;
   struct BgL_nodez00_bgl * BgL_argz00;
} *BgL_appzd2lyzd2_bglt;

typedef struct BgL_funcallz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_nodez00_bgl * BgL_funz00;
   obj_t BgL_argsz00;
   obj_t BgL_strengthz00;
} *BgL_funcallz00_bglt;

typedef struct BgL_externz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_exprza2za2;
   obj_t BgL_effectz00;
} *BgL_externz00_bglt;

typedef struct BgL_pragmaz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_exprza2za2;
   obj_t BgL_effectz00;
   obj_t BgL_formatz00;
} *BgL_pragmaz00_bglt;

typedef struct BgL_getfieldz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_exprza2za2;
   obj_t BgL_effectz00;
   obj_t BgL_fnamez00;
   struct BgL_typez00_bgl * BgL_ftypez00;
   struct BgL_typez00_bgl * BgL_otypez00;
} *BgL_getfieldz00_bglt;

typedef struct BgL_setfieldz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_exprza2za2;
   obj_t BgL_effectz00;
   obj_t BgL_fnamez00;
   struct BgL_typez00_bgl * BgL_ftypez00;
   struct BgL_typez00_bgl * BgL_otypez00;
} *BgL_setfieldz00_bglt;

typedef struct BgL_newz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_exprza2za2;
   obj_t BgL_effectz00;
} *BgL_newz00_bglt;

typedef struct BgL_vallocz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_exprza2za2;
   obj_t BgL_effectz00;
   obj_t BgL_czd2heapzd2formatz00;
   struct BgL_typez00_bgl * BgL_ftypez00;
   struct BgL_typez00_bgl * BgL_otypez00;
} *BgL_vallocz00_bglt;

typedef struct BgL_vrefz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_exprza2za2;
   obj_t BgL_effectz00;
   obj_t BgL_czd2formatzd2;
   struct BgL_typez00_bgl * BgL_ftypez00;
   struct BgL_typez00_bgl * BgL_otypez00;
   struct BgL_typez00_bgl * BgL_vtypez00;
} *BgL_vrefz00_bglt;

typedef struct BgL_vsetz12z12_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_exprza2za2;
   obj_t BgL_effectz00;
   obj_t BgL_czd2formatzd2;
   struct BgL_typez00_bgl * BgL_ftypez00;
   struct BgL_typez00_bgl * BgL_otypez00;
   struct BgL_typez00_bgl * BgL_vtypez00;
} *BgL_vsetz12z12_bglt;

typedef struct BgL_vlengthz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_exprza2za2;
   obj_t BgL_effectz00;
   obj_t BgL_czd2formatzd2;
   struct BgL_typez00_bgl * BgL_vtypez00;
} *BgL_vlengthz00_bglt;

typedef struct BgL_isaz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_exprza2za2;
   obj_t BgL_effectz00;
   struct BgL_typez00_bgl * BgL_classz00;
} *BgL_isaz00_bglt;

typedef struct BgL_castz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_nodez00_bgl * BgL_argz00;
} *BgL_castz00_bglt;

typedef struct BgL_setqz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_varz00_bgl * BgL_varz00;
   struct BgL_nodez00_bgl * BgL_valuez00;
} *BgL_setqz00_bglt;

typedef struct BgL_conditionalz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   struct BgL_nodez00_bgl * BgL_testz00;
   struct BgL_nodez00_bgl * BgL_truez00;
   struct BgL_nodez00_bgl * BgL_falsez00;
} *BgL_conditionalz00_bglt;

typedef struct BgL_failz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_nodez00_bgl * BgL_procz00;
   struct BgL_nodez00_bgl * BgL_msgz00;
   struct BgL_nodez00_bgl * BgL_objz00;
} *BgL_failz00_bglt;

typedef struct BgL_selectz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   struct BgL_nodez00_bgl * BgL_testz00;
   obj_t BgL_clausesz00;
   struct BgL_typez00_bgl * BgL_itemzd2typezd2;
} *BgL_selectz00_bglt;

typedef struct BgL_letzd2funzd2_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_localsz00;
   struct BgL_nodez00_bgl * BgL_bodyz00;
} *BgL_letzd2funzd2_bglt;

typedef struct BgL_letzd2varzd2_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   obj_t BgL_bindingsz00;
   struct BgL_nodez00_bgl * BgL_bodyz00;
   bool_t BgL_removablezf3zf3;
} *BgL_letzd2varzd2_bglt;

typedef struct BgL_setzd2exzd2itz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_varz00_bgl * BgL_varz00;
   struct BgL_nodez00_bgl * BgL_bodyz00;
} *BgL_setzd2exzd2itz00_bglt;

typedef struct BgL_jumpzd2exzd2itz00_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_nodez00_bgl * BgL_exitz00;
   struct BgL_nodez00_bgl * BgL_valuez00;
} *BgL_jumpzd2exzd2itz00_bglt;

typedef struct BgL_makezd2boxzd2_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   struct BgL_nodez00_bgl * BgL_valuez00;
} *BgL_makezd2boxzd2_bglt;

typedef struct BgL_boxzd2refzd2_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   obj_t BgL_sidezd2effectzf3z21;
   obj_t BgL_keyz00;
   struct BgL_varz00_bgl * BgL_varz00;
} *BgL_boxzd2refzd2_bglt;

typedef struct BgL_boxzd2setz12zc0_bgl {
   header_t header;
   obj_t widening;
   obj_t BgL_locz00;
   struct BgL_typez00_bgl * BgL_typez00;
   struct BgL_varz00_bgl * BgL_varz00;
   struct BgL_nodez00_bgl * BgL_valuez00;
} *BgL_boxzd2setz12zc0_bglt;


static obj_t BGl_methodzd2initzd2zzbackend_c_mainz00();
BGL_IMPORT obj_t open_input_string(obj_t);
static obj_t BGl__makezd2bigloozd2mainz00zzbackend_c_mainz00(obj_t);
BGL_IMPORT obj_t BGl_readz00zz__readerz00(obj_t);
BGL_IMPORT bool_t BGl_iszd2azf3z21zz__objectz00(obj_t, obj_t);
extern BgL_nodez00_bglt BGl_sexpzd2ze3nodez31zzast_sexpz00(obj_t, obj_t, obj_t, obj_t);
extern obj_t BGl_za2moduleza2z00zzmodule_modulez00;
extern obj_t BGl_za2_za2z00zztype_cachez00;
extern obj_t BGl_globalz00zzast_varz00;
static obj_t BGl_cnstzd2initzd2zzbackend_c_mainz00();
static obj_t BGl_importedzd2moduleszd2initz00zzbackend_c_mainz00();
BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zzbackend_c_mainz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzengine_paramz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzmodule_modulez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztype_typez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztype_cachez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_varz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_nodez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_envz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_sexpz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_localz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzast_glozd2defzd2(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__objectz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__readerz00(long, char *);
BGL_EXPORTED_DECL obj_t BGl_makezd2bigloozd2mainz00zzbackend_c_mainz00();
extern obj_t BGl_za2mainza2z00zzmodule_modulez00;
extern BgL_globalz00_bglt BGl_defzd2globalzd2sfunz12z12zzast_glozd2defzd2(obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t, obj_t);
extern BgL_localz00_bglt BGl_makezd2localzd2svarz00zzast_localz00(obj_t, BgL_typez00_bglt);
extern obj_t BGl_modulezd2initializa7ationzd2idza7zzmodule_modulez00(obj_t);
extern obj_t BGl_za2objza2z00zztype_cachez00;
static obj_t BGl_requirezd2initializa7ationz75zzbackend_c_mainz00 = BUNSPEC;
static obj_t BGl_libraryzd2moduleszd2initz00zzbackend_c_mainz00();
static obj_t __cnst[ 11 ] ;


DEFINE_EXPORT_PROCEDURE( BGl_makezd2bigloozd2mainzd2envzd2zzbackend_c_mainz00, BgL_bgl__makeza7d2biglooza7d2mainza700za7za7backend_c_mainza7003144z00, BGl__makezd2bigloozd2mainz00zzbackend_c_mainz00, 0L, 0 );
DEFINE_STRING( BGl_string3119z00zzbackend_c_mainz00, BgL_bgl_string3119za700za7za7backend_c_mainza7003145z00, "export now bigloo-main-procedure sfun (argv::obj) bigloo_main::obj value @ %exit begin argv ", 92 );
DEFINE_STRING( BGl_string3118z00zzbackend_c_mainz00, BgL_bgl_string3118za700za7za7backend_c_mainza7003146z00, "bigloo_main", 11 );



/* module-initialization */
BGL_EXPORTED_DEF obj_t BGl_modulezd2initializa7ationz75zzbackend_c_mainz00(long BgL_checksumz00_1097, char * BgL_fromz00_1098)
{ AN_OBJECT;
{ 
if(
CBOOL(BGl_requirezd2initializa7ationz75zzbackend_c_mainz00))
{ 
BGl_requirezd2initializa7ationz75zzbackend_c_mainz00 = 
BBOOL(((bool_t)0)); 
BGl_libraryzd2moduleszd2initz00zzbackend_c_mainz00(); 
BGl_cnstzd2initzd2zzbackend_c_mainz00(); 
BGl_importedzd2moduleszd2initz00zzbackend_c_mainz00(); 
return BUNSPEC;}  else 
{ 
return BUNSPEC;} } 
}



/* library-modules-init */
obj_t BGl_libraryzd2moduleszd2initz00zzbackend_c_mainz00()
{ AN_OBJECT;
{ /* ./BackEnd/c-main.scm 15 */
BGl_modulezd2initializa7ationz75zz__readerz00(((long)0), "backend_c_main"); 
BGl_modulezd2initializa7ationz75zz__objectz00(((long)0), "backend_c_main"); 
return BUNSPEC;} 
}



/* cnst-init */
obj_t BGl_cnstzd2initzd2zzbackend_c_mainz00()
{ AN_OBJECT;
{ /* ./BackEnd/c-main.scm 15 */
{ /* ./BackEnd/c-main.scm 15 */
obj_t BgL_cportz00_1090;
BgL_cportz00_1090 = 
open_input_string(BGl_string3119z00zzbackend_c_mainz00); 
{ 
long BgL_iz00_1091;
BgL_iz00_1091 = ((long)10); 
BgL_loopz00_1092:
{ /* ./BackEnd/c-main.scm 15 */
bool_t BgL_test3121z00_1093;
BgL_test3121z00_1093 = 
(BgL_iz00_1091==((long)-1)); 
if(BgL_test3121z00_1093)
{ /* ./BackEnd/c-main.scm 15 */
return BUNSPEC;}  else 
{ /* ./BackEnd/c-main.scm 15 */
{ /* ./BackEnd/c-main.scm 15 */
obj_t BgL_arg3123z00_1094;
{ /* ./BackEnd/c-main.scm 15 */
obj_t BgL_list3126z00_1095;
BgL_list3126z00_1095 = 
MAKE_PAIR(BgL_cportz00_1090, BNIL); 
BgL_arg3123z00_1094 = 
BGl_readz00zz__readerz00(BgL_list3126z00_1095); } 
{ /* ./BackEnd/c-main.scm 15 */
int BgL_auxz00_1112;
BgL_auxz00_1112 = 
(int)(BgL_iz00_1091); 
CNST_TABLE_SET(BgL_auxz00_1112, BgL_arg3123z00_1094); } } 
{ /* ./BackEnd/c-main.scm 15 */
int BgL_auxz00_1096;
{ /* ./BackEnd/c-main.scm 15 */
long BgL_auxz00_1115;
BgL_auxz00_1115 = 
(BgL_iz00_1091-((long)1)); 
BgL_auxz00_1096 = 
(int)(BgL_auxz00_1115); } 
{ 
long BgL_iz00_1118;
BgL_iz00_1118 = 
(long)(BgL_auxz00_1096); 
BgL_iz00_1091 = BgL_iz00_1118; 
goto BgL_loopz00_1092;} } } } } } } 
}



/* make-bigloo-main */
BGL_EXPORTED_DEF obj_t BGl_makezd2bigloozd2mainz00zzbackend_c_mainz00()
{ AN_OBJECT;
{ /* ./BackEnd/c-main.scm 31 */
{ /* ./BackEnd/c-main.scm 32 */
obj_t BgL_argsz00_668;
{ /* ./BackEnd/c-main.scm 32 */
BgL_localz00_bglt BgL_arg2764z00_711;
BgL_arg2764z00_711 = 
BGl_makezd2localzd2svarz00zzast_localz00(
CNST_TABLE_REF(((long)0)), 
(BgL_typez00_bglt)(BGl_za2objza2z00zztype_cachez00)); 
{ /* ./BackEnd/c-main.scm 32 */
obj_t BgL_list2766z00_712;
{ /* ./BackEnd/c-main.scm 32 */
obj_t BgL_auxz00_1123;
BgL_auxz00_1123 = 
(obj_t)(BgL_arg2764z00_711); 
BgL_list2766z00_712 = 
MAKE_PAIR(BgL_auxz00_1123, BNIL); } 
BgL_argsz00_668 = BgL_list2766z00_712; } } 
{ /* ./BackEnd/c-main.scm 32 */
obj_t BgL_userzd2mainzd2_669;
{ /* ./BackEnd/c-main.scm 33 */
bool_t BgL_test2761z00_710;
{ /* ./BackEnd/c-main.scm 33 */
obj_t BgL_obj1261z00_1079;
BgL_obj1261z00_1079 = BGl_za2mainza2z00zzmodule_modulez00; 
BgL_test2761z00_710 = 
BGl_iszd2azf3z21zz__objectz00(BgL_obj1261z00_1079, BGl_globalz00zzast_varz00); } 
if(BgL_test2761z00_710)
{ /* ./BackEnd/c-main.scm 33 */
BgL_userzd2mainzd2_669 = BGl_za2mainza2z00zzmodule_modulez00; }  else 
{ /* ./BackEnd/c-main.scm 33 */
BgL_userzd2mainzd2_669 = BFALSE; } } 
{ /* ./BackEnd/c-main.scm 33 */
obj_t BgL_mainzd2bodyzd2_670;
{ /* ./BackEnd/c-main.scm 36 */
bool_t BgL_test2684z00_675;
BgL_test2684z00_675 = 
BGl_iszd2azf3z21zz__objectz00(BgL_userzd2mainzd2_669, BGl_globalz00zzast_varz00); 
if(BgL_test2684z00_675)
{ /* ./BackEnd/c-main.scm 43 */
obj_t BgL_arg2686z00_676;obj_t BgL_arg2687z00_677;
BgL_arg2686z00_676 = 
CNST_TABLE_REF(((long)1)); 
{ /* ./BackEnd/c-main.scm 38 */
obj_t BgL_arg2690z00_678;obj_t BgL_arg2691z00_679;
{ /* ./BackEnd/c-main.scm 38 */
obj_t BgL_arg2694z00_680;obj_t BgL_arg2695z00_681;
BgL_arg2694z00_680 = 
BGl_modulezd2initializa7ationzd2idza7zzmodule_modulez00(BGl_za2moduleza2z00zzmodule_modulez00); 
{ /* ./BackEnd/c-main.scm 38 */
obj_t BgL_arg2700z00_683;
{ /* ./BackEnd/c-main.scm 40 */
obj_t BgL_arg2703z00_684;
{ /* ./BackEnd/c-main.scm 40 */
obj_t BgL_symbolz00_1081;
BgL_symbolz00_1081 = BGl_za2moduleza2z00zzmodule_modulez00; 
BgL_arg2703z00_684 = 
SYMBOL_TO_STRING(BgL_symbolz00_1081); } 
BgL_arg2700z00_683 = 
MAKE_PAIR(BgL_arg2703z00_684, BNIL); } 
{ /* ./BackEnd/c-main.scm 38 */
obj_t BgL_auxz00_1134;
BgL_auxz00_1134 = 
BINT(((long)0)); 
BgL_arg2695z00_681 = 
MAKE_PAIR(BgL_auxz00_1134, BgL_arg2700z00_683); } } 
BgL_arg2690z00_678 = 
MAKE_PAIR(BgL_arg2694z00_680, BgL_arg2695z00_681); } 
{ /* ./BackEnd/c-main.scm 41 */
obj_t BgL_arg2708z00_686;
{ /* ./BackEnd/c-main.scm 41 */
obj_t BgL_arg2712z00_688;obj_t BgL_arg2713z00_689;
BgL_arg2712z00_688 = 
CNST_TABLE_REF(((long)2)); 
{ /* ./BackEnd/c-main.scm 41 */
obj_t BgL_arg2716z00_690;
{ /* ./BackEnd/c-main.scm 41 */
obj_t BgL_arg2720z00_692;obj_t BgL_arg2721z00_693;
{ /* ./BackEnd/c-main.scm 41 */
obj_t BgL_arg2724z00_694;obj_t BgL_arg2725z00_695;
BgL_arg2724z00_694 = 
CNST_TABLE_REF(((long)3)); 
{ /* ./BackEnd/c-main.scm 41 */
obj_t BgL_arg2728z00_696;obj_t BgL_arg2729z00_697;
{ /* ./BackEnd/c-main.scm 41 */
BgL_variablez00_bglt BgL_obj1113z00_1082;
BgL_obj1113z00_1082 = 
(BgL_variablez00_bglt)(BgL_userzd2mainzd2_669); 
BgL_arg2728z00_696 = 
(((BgL_variablez00_bglt)CREF(BgL_obj1113z00_1082))->BgL_idz00); } 
{ /* ./BackEnd/c-main.scm 42 */
obj_t BgL_arg2733z00_698;
{ /* ./BackEnd/c-main.scm 42 */
BgL_globalz00_bglt BgL_obj1186z00_1083;
BgL_obj1186z00_1083 = 
(BgL_globalz00_bglt)(BgL_userzd2mainzd2_669); 
BgL_arg2733z00_698 = 
(((BgL_globalz00_bglt)CREF(BgL_obj1186z00_1083))->BgL_modulez00); } 
BgL_arg2729z00_697 = 
MAKE_PAIR(BgL_arg2733z00_698, BNIL); } 
BgL_arg2725z00_695 = 
MAKE_PAIR(BgL_arg2728z00_696, BgL_arg2729z00_697); } 
BgL_arg2720z00_692 = 
MAKE_PAIR(BgL_arg2724z00_694, BgL_arg2725z00_695); } 
{ /* ./BackEnd/c-main.scm 41 */
obj_t BgL_auxz00_1147;
BgL_auxz00_1147 = 
CNST_TABLE_REF(((long)0)); 
BgL_arg2721z00_693 = 
MAKE_PAIR(BgL_auxz00_1147, BNIL); } 
BgL_arg2716z00_690 = 
MAKE_PAIR(BgL_arg2720z00_692, BgL_arg2721z00_693); } 
BgL_arg2713z00_689 = 
MAKE_PAIR(BgL_arg2716z00_690, BNIL); } 
BgL_arg2708z00_686 = 
MAKE_PAIR(BgL_arg2712z00_688, BgL_arg2713z00_689); } 
BgL_arg2691z00_679 = 
MAKE_PAIR(BgL_arg2708z00_686, BNIL); } 
BgL_arg2687z00_677 = 
MAKE_PAIR(BgL_arg2690z00_678, BgL_arg2691z00_679); } 
BgL_mainzd2bodyzd2_670 = 
MAKE_PAIR(BgL_arg2686z00_676, BgL_arg2687z00_677); }  else 
{ /* ./BackEnd/c-main.scm 47 */
obj_t BgL_arg2739z00_700;obj_t BgL_arg2740z00_701;
BgL_arg2739z00_700 = 
CNST_TABLE_REF(((long)2)); 
{ /* ./BackEnd/c-main.scm 45 */
obj_t BgL_arg2743z00_702;
{ /* ./BackEnd/c-main.scm 45 */
obj_t BgL_arg2747z00_704;obj_t BgL_arg2748z00_705;
BgL_arg2747z00_704 = 
BGl_modulezd2initializa7ationzd2idza7zzmodule_modulez00(BGl_za2moduleza2z00zzmodule_modulez00); 
{ /* ./BackEnd/c-main.scm 45 */
obj_t BgL_arg2753z00_707;
{ /* ./BackEnd/c-main.scm 47 */
obj_t BgL_arg2756z00_708;
{ /* ./BackEnd/c-main.scm 47 */
obj_t BgL_symbolz00_1084;
BgL_symbolz00_1084 = BGl_za2moduleza2z00zzmodule_modulez00; 
BgL_arg2756z00_708 = 
SYMBOL_TO_STRING(BgL_symbolz00_1084); } 
BgL_arg2753z00_707 = 
MAKE_PAIR(BgL_arg2756z00_708, BNIL); } 
{ /* ./BackEnd/c-main.scm 45 */
obj_t BgL_auxz00_1160;
BgL_auxz00_1160 = 
BINT(((long)0)); 
BgL_arg2748z00_705 = 
MAKE_PAIR(BgL_auxz00_1160, BgL_arg2753z00_707); } } 
BgL_arg2743z00_702 = 
MAKE_PAIR(BgL_arg2747z00_704, BgL_arg2748z00_705); } 
BgL_arg2740z00_701 = 
MAKE_PAIR(BgL_arg2743z00_702, BNIL); } 
BgL_mainzd2bodyzd2_670 = 
MAKE_PAIR(BgL_arg2739z00_700, BgL_arg2740z00_701); } } 
{ /* ./BackEnd/c-main.scm 36 */
BgL_nodez00_bglt BgL_nodez00_671;
{ /* ./BackEnd/c-main.scm 48 */
obj_t BgL__z00_673;
BgL__z00_673 = BGl_za2_za2z00zztype_cachez00; 
BGl_za2_za2z00zztype_cachez00 = BGl_za2objza2z00zztype_cachez00; 
{ /* ./BackEnd/c-main.scm 50 */
BgL_nodez00_bglt BgL_nodez00_674;
BgL_nodez00_674 = 
BGl_sexpzd2ze3nodez31zzast_sexpz00(BgL_mainzd2bodyzd2_670, BgL_argsz00_668, BFALSE, 
CNST_TABLE_REF(((long)4))); 
BGl_za2_za2z00zztype_cachez00 = BgL__z00_673; 
BgL_nodez00_671 = BgL_nodez00_674; } } 
{ /* ./BackEnd/c-main.scm 48 */
BgL_globalz00_bglt BgL_bigloozd2mainzd2_672;
BgL_bigloozd2mainzd2_672 = 
BGl_defzd2globalzd2sfunz12z12zzast_glozd2defzd2(
CNST_TABLE_REF(((long)5)), 
CNST_TABLE_REF(((long)6)), BgL_argsz00_668, BGl_za2moduleza2z00zzmodule_modulez00, 
CNST_TABLE_REF(((long)7)), 
CNST_TABLE_REF(((long)8)), 
CNST_TABLE_REF(((long)9)), 
(obj_t)(BgL_nodez00_671)); 
{ /* ./BackEnd/c-main.scm 53 */

{ /* ./BackEnd/c-main.scm 61 */
BgL_globalz00_bglt BgL_obj1191z00_1085;obj_t BgL_val1190z00_1086;
BgL_obj1191z00_1085 = BgL_bigloozd2mainzd2_672; 
BgL_val1190z00_1086 = 
CNST_TABLE_REF(((long)10)); 
((((BgL_globalz00_bglt)CREF(BgL_obj1191z00_1085))->BgL_importz00) = ((obj_t)BgL_val1190z00_1086), BUNSPEC); } 
{ /* ./BackEnd/c-main.scm 62 */
BgL_variablez00_bglt BgL_obj1116z00_1087;obj_t BgL_val1115z00_1088;
BgL_obj1116z00_1087 = 
(BgL_variablez00_bglt)(BgL_bigloozd2mainzd2_672); 
BgL_val1115z00_1088 = BGl_string3118z00zzbackend_c_mainz00; 
((((BgL_variablez00_bglt)CREF(BgL_obj1116z00_1087))->BgL_namez00) = ((obj_t)BgL_val1115z00_1088), BUNSPEC); } 
return 
(obj_t)(BgL_bigloozd2mainzd2_672);} } } } } } } 
}



/* _make-bigloo-main */
obj_t BGl__makezd2bigloozd2mainz00zzbackend_c_mainz00(obj_t BgL_envz00_1089)
{ AN_OBJECT;
{ /* ./BackEnd/c-main.scm 31 */
return 
BGl_makezd2bigloozd2mainz00zzbackend_c_mainz00();} 
}



/* method-init */
obj_t BGl_methodzd2initzd2zzbackend_c_mainz00()
{ AN_OBJECT;
{ /* ./BackEnd/c-main.scm 15 */
return BUNSPEC;} 
}



/* imported-modules-init */
obj_t BGl_importedzd2moduleszd2initz00zzbackend_c_mainz00()
{ AN_OBJECT;
{ /* ./BackEnd/c-main.scm 15 */
BGl_modulezd2initializa7ationz75zzengine_paramz00(((long)14260), "backend_c_main"); 
BGl_modulezd2initializa7ationz75zzmodule_modulez00(((long)8699), "backend_c_main"); 
BGl_modulezd2initializa7ationz75zztype_typez00(((long)19090), "backend_c_main"); 
BGl_modulezd2initializa7ationz75zztype_cachez00(((long)25848), "backend_c_main"); 
BGl_modulezd2initializa7ationz75zzast_varz00(((long)44246), "backend_c_main"); 
BGl_modulezd2initializa7ationz75zzast_nodez00(((long)50868), "backend_c_main"); 
BGl_modulezd2initializa7ationz75zzast_envz00(((long)62031), "backend_c_main"); 
BGl_modulezd2initializa7ationz75zzast_sexpz00(((long)15705), "backend_c_main"); 
BGl_modulezd2initializa7ationz75zzast_localz00(((long)28959), "backend_c_main"); 
return 
BGl_modulezd2initializa7ationz75zzast_glozd2defzd2(((long)4795), "backend_c_main");} 
}

