/*===========================================================================*/
/*   (Engine/engine.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 Engine/engine.scm)*/
/* GC selection */
#define THE_GC BOEHM_GC

#include <bigloo.h>

extern obj_t BGl_za2czd2filesza2zd2zzengine_paramz00;
static obj_t BGl__hellozd2worldzd2zzengine_enginez00(obj_t);
extern obj_t BGl_za2srczd2filesza2zd2zzengine_paramz00;
extern obj_t BGl_za2rmzd2tmpzd2filesza2z00zzengine_paramz00;
extern obj_t BGl_za2verboseza2z00zzengine_paramz00;
extern obj_t BGl_za2helloza2z00zzengine_paramz00;
extern obj_t BGl_linkz00zzengine_linkz00();
static obj_t BGl__enginez00zzengine_enginez00(obj_t);
BGL_IMPORT obj_t BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(obj_t);
extern obj_t BGl_za2bigloozd2argsza2zd2zzengine_paramz00;
extern obj_t BGl_interpz00zzengine_interpz00(obj_t, obj_t, obj_t, obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_hellozd2worldzd2zzengine_enginez00();
static obj_t BGl_importedzd2moduleszd2initz00zzengine_enginez00();
extern obj_t BGl_userzd2warningzd2zztools_errorz00(obj_t, obj_t, obj_t);
BGL_IMPORT obj_t string_append_3(obj_t, obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_modulezd2initializa7ationz75zzengine_enginez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztools_speekz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztools_tracez00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zztools_errorz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzwrite_versionz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzengine_paramz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzengine_compilerz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzengine_interpz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzengine_linkz00(long, char *);
extern obj_t BGl_modulezd2initializa7ationz75zzbackend_cz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__osz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__readerz00(long, char *);
BGL_IMPORT obj_t BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(long, char *);
extern obj_t BGl_verbosez00zztools_speekz00(obj_t, obj_t);
extern obj_t BGl_za2libzd2dirza2zd2zzengine_paramz00;
extern obj_t BGl_cczd2compilerzd2zzbackend_cz00(obj_t, obj_t);
extern obj_t BGl_za2ozd2filesza2zd2zzengine_paramz00;
BGL_IMPORT obj_t string_append(obj_t, obj_t);
BGL_EXPORTED_DECL obj_t BGl_enginez00zzengine_enginez00();
extern obj_t BGl_compilerz00zzengine_compilerz00();
extern obj_t BGl_za2destza2z00zzengine_paramz00;
extern obj_t BGl_za2startupzd2fileza2zd2zzengine_paramz00;
extern obj_t BGl_za2interpreterza2z00zzengine_paramz00;
static obj_t BGl_requirezd2initializa7ationz75zzengine_enginez00 = BUNSPEC;
BGL_IMPORT obj_t BGl_prefixz00zz__osz00(obj_t);
static obj_t BGl_libraryzd2moduleszd2initz00zzengine_enginez00();
static obj_t *__cnst;


DEFINE_EXPORT_PROCEDURE( BGl_enginezd2envzd2zzengine_enginez00, BgL_bgl__engineza700za7za7engine_engineza7001128z00, BGl__enginez00zzengine_enginez00, 0L, 0 );
extern obj_t BGl_versionzd2envzd2zzwrite_versionz00;
DEFINE_EXPORT_PROCEDURE( BGl_hellozd2worldzd2envz00zzengine_enginez00, BgL_bgl__helloza7d2worldza7d2za7za7engine_engineza7001129za7, BGl__hellozd2worldzd2zzengine_enginez00, 0L, 0 );
DEFINE_STRING( BGl_string1119z00zzengine_enginez00, BgL_bgl_string1119za700za7za7engine_engineza7001130z00, "", 0 );
DEFINE_STRING( BGl_string1118z00zzengine_enginez00, BgL_bgl_string1118za700za7za7engine_engineza7001131z00, " ", 1 );
DEFINE_STRING( BGl_string1117z00zzengine_enginez00, BgL_bgl_string1117za700za7za7engine_engineza7001132z00, "/scheme-files", 13 );
DEFINE_STRING( BGl_string1116z00zzengine_enginez00, BgL_bgl_string1116za700za7za7engine_engineza7001133z00, "Ignoring additional files", 25 );
DEFINE_STRING( BGl_string1115z00zzengine_enginez00, BgL_bgl_string1115za700za7za7engine_engineza7001134z00, "engine", 6 );



/* module-initialization */
BGL_EXPORTED_DEF obj_t BGl_modulezd2initializa7ationz75zzengine_enginez00(long BgL_checksumz00_60, char * BgL_fromz00_61)
{ AN_OBJECT;
{ 
if(
CBOOL(BGl_requirezd2initializa7ationz75zzengine_enginez00))
{ 
BGl_requirezd2initializa7ationz75zzengine_enginez00 = 
BBOOL(((bool_t)0)); 
BGl_libraryzd2moduleszd2initz00zzengine_enginez00(); 
BGl_importedzd2moduleszd2initz00zzengine_enginez00(); 
return BUNSPEC;}  else 
{ 
return BUNSPEC;} } 
}



/* library-modules-init */
obj_t BGl_libraryzd2moduleszd2initz00zzengine_enginez00()
{ AN_OBJECT;
{ /* ./Engine/engine.scm 16 */
BGl_modulezd2initializa7ationz75zz__r4_pairs_and_lists_6_3z00(((long)0), "engine_engine"); 
BGl_modulezd2initializa7ationz75zz__osz00(((long)0), "engine_engine"); 
BGl_modulezd2initializa7ationz75zz__readerz00(((long)0), "engine_engine"); 
return BUNSPEC;} 
}



/* engine */
BGL_EXPORTED_DEF obj_t BGl_enginez00zzengine_enginez00()
{ AN_OBJECT;
{ /* ./Engine/engine.scm 32 */
{ /* ./Engine/engine.scm 34 */
bool_t BgL_test1003z00_1;
{ /* ./Engine/engine.scm 34 */
bool_t BgL_test1040z00_16;
{ /* ./Engine/engine.scm 34 */
obj_t BgL_objz00_35;
BgL_objz00_35 = BGl_za2srczd2filesza2zd2zzengine_paramz00; 
BgL_test1040z00_16 = 
PAIRP(BgL_objz00_35); } 
if(BgL_test1040z00_16)
{ /* ./Engine/engine.scm 34 */
if(
CBOOL(BGl_za2interpreterza2z00zzengine_paramz00))
{ /* ./Engine/engine.scm 34 */
BgL_test1003z00_1 = ((bool_t)0); }  else 
{ /* ./Engine/engine.scm 34 */
BgL_test1003z00_1 = ((bool_t)1); } }  else 
{ /* ./Engine/engine.scm 34 */
BgL_test1003z00_1 = ((bool_t)0); } } 
if(BgL_test1003z00_1)
{ /* ./Engine/engine.scm 34 */
return 
BGl_compilerz00zzengine_compilerz00();}  else 
{ /* ./Engine/engine.scm 36 */
bool_t BgL_test1005z00_2;
{ /* ./Engine/engine.scm 36 */
obj_t BgL_objz00_36;
BgL_objz00_36 = BGl_za2czd2filesza2zd2zzengine_paramz00; 
BgL_test1005z00_2 = 
PAIRP(BgL_objz00_36); } 
if(BgL_test1005z00_2)
{ /* ./Engine/engine.scm 36 */
{ /* ./Engine/engine.scm 37 */
bool_t BgL_test1006z00_3;
{ /* ./Engine/engine.scm 37 */
obj_t BgL_arg1014z00_7;
{ /* ./Engine/engine.scm 37 */
obj_t BgL_pairz00_37;
BgL_pairz00_37 = BGl_za2czd2filesza2zd2zzengine_paramz00; 
BgL_arg1014z00_7 = 
CDR(BgL_pairz00_37); } 
BgL_test1006z00_3 = 
PAIRP(BgL_arg1014z00_7); } 
if(BgL_test1006z00_3)
{ /* ./Engine/engine.scm 38 */
obj_t BgL_arg1010z00_6;
{ /* ./Engine/engine.scm 38 */
obj_t BgL_pairz00_39;
BgL_pairz00_39 = BGl_za2czd2filesza2zd2zzengine_paramz00; 
BgL_arg1010z00_6 = 
CDR(BgL_pairz00_39); } 
BGl_userzd2warningzd2zztools_errorz00(BGl_string1115z00zzengine_enginez00, BGl_string1116z00zzengine_enginez00, BgL_arg1010z00_6); }  else 
{ /* ./Engine/engine.scm 37 */BFALSE; } } 
BGl_za2rmzd2tmpzd2filesza2z00zzengine_paramz00 = BFALSE; 
{ /* ./Engine/engine.scm 40 */
obj_t BgL_arg1018z00_8;obj_t BgL_arg1019z00_9;
{ /* ./Engine/engine.scm 40 */
obj_t BgL_arg1022z00_10;
{ /* ./Engine/engine.scm 40 */
obj_t BgL_pairz00_40;
BgL_pairz00_40 = BGl_za2czd2filesza2zd2zzengine_paramz00; 
BgL_arg1022z00_10 = 
CAR(BgL_pairz00_40); } 
BgL_arg1018z00_8 = 
BGl_prefixz00zz__osz00(BgL_arg1022z00_10); } 
{ /* ./Engine/engine.scm 41 */
bool_t BgL_test1025z00_11;
{ /* ./Engine/engine.scm 41 */
obj_t BgL_objz00_41;
BgL_objz00_41 = BGl_za2destza2z00zzengine_paramz00; 
BgL_test1025z00_11 = 
STRINGP(BgL_objz00_41); } 
if(BgL_test1025z00_11)
{ /* ./Engine/engine.scm 41 */
BgL_arg1019z00_9 = 
BGl_prefixz00zz__osz00(BGl_za2destza2z00zzengine_paramz00); }  else 
{ /* ./Engine/engine.scm 41 */
BgL_arg1019z00_9 = BFALSE; } } 
return 
BGl_cczd2compilerzd2zzbackend_cz00(BgL_arg1018z00_8, BgL_arg1019z00_9);} }  else 
{ /* ./Engine/engine.scm 44 */
bool_t BgL_test1028z00_12;
{ /* ./Engine/engine.scm 44 */
obj_t BgL_objz00_42;
BgL_objz00_42 = BGl_za2ozd2filesza2zd2zzengine_paramz00; 
BgL_test1028z00_12 = 
NULLP(BgL_objz00_42); } 
if(BgL_test1028z00_12)
{ /* ./Engine/engine.scm 44 */
{ /* ./Engine/engine.scm 49 */
obj_t BgL_arg1030z00_13;
{ /* ./Engine/engine.scm 49 */
obj_t BgL_arg1033z00_14;
{ /* ./Engine/engine.scm 49 */
obj_t BgL_pairz00_43;
BgL_pairz00_43 = BGl_za2libzd2dirza2zd2zzengine_paramz00; 
BgL_arg1033z00_14 = 
CAR(BgL_pairz00_43); } 
BgL_arg1030z00_13 = 
string_append(BgL_arg1033z00_14, BGl_string1117z00zzengine_enginez00); } 
return 
BGl_interpz00zzengine_interpz00(BGl_versionzd2envzd2zzwrite_versionz00, BGl_za2verboseza2z00zzengine_paramz00, BGl_za2srczd2filesza2zd2zzengine_paramz00, BGl_za2startupzd2fileza2zd2zzengine_paramz00, BgL_arg1030z00_13, BGl_za2bigloozd2argsza2zd2zzengine_paramz00);} }  else 
{ /* ./Engine/engine.scm 44 */
return 
BGl_linkz00zzengine_linkz00();} } } } } 
}



/* _engine */
obj_t BGl__enginez00zzengine_enginez00(obj_t BgL_envz00_57)
{ AN_OBJECT;
{ /* ./Engine/engine.scm 32 */
return 
BGl_enginez00zzengine_enginez00();} 
}



/* hello-world */
BGL_EXPORTED_DEF obj_t BGl_hellozd2worldzd2zzengine_enginez00()
{ AN_OBJECT;
{ /* ./Engine/engine.scm 57 */
if(
CBOOL(BGl_za2helloza2z00zzengine_paramz00))
{ 
obj_t BgL_srcz00_17;obj_t BgL_strz00_18;
{ /* ./Engine/engine.scm 59 */
obj_t BgL_arg1043z00_20;
BgL_arg1043z00_20 = 
BGl_reversez12z12zz__r4_pairs_and_lists_6_3z00(BGl_za2srczd2filesza2zd2zzengine_paramz00); 
BgL_srcz00_17 = BgL_arg1043z00_20; 
BgL_strz00_18 = BGl_string1119z00zzengine_enginez00; 
BgL_loopz00_19:
{ /* ./Engine/engine.scm 61 */
bool_t BgL_test1047z00_22;
BgL_test1047z00_22 = 
NULLP(BgL_srcz00_17); 
if(BgL_test1047z00_22)
{ /* ./Engine/engine.scm 61 */
{ /* ./Engine/engine.scm 63 */
long BgL_arg1049z00_23;
{ /* ./Engine/engine.scm 63 */
long BgL_auxz00_101;
{ /* ./Engine/engine.scm 63 */
int BgL_auxz00_102;
BgL_auxz00_102 = 
STRING_LENGTH(BgL_strz00_18); 
BgL_auxz00_101 = 
(long)(BgL_auxz00_102); } 
BgL_arg1049z00_23 = 
(BgL_auxz00_101-((long)1)); } 
{ /* ./Engine/engine.scm 63 */
int BgL_kz00_49;
BgL_kz00_49 = 
(int)(BgL_arg1049z00_23); 
STRING_SET(BgL_strz00_18, BgL_kz00_49, ((unsigned char)':')); } } 
{ /* ./Engine/engine.scm 64 */
obj_t BgL_list1057z00_26;
{ /* ./Engine/engine.scm 64 */
obj_t BgL_arg1059z00_27;
{ /* ./Engine/engine.scm 64 */
obj_t BgL_auxz00_108;
BgL_auxz00_108 = 
BCHAR(((unsigned char)'\n')); 
BgL_arg1059z00_27 = 
MAKE_PAIR(BgL_auxz00_108, BNIL); } 
BgL_list1057z00_26 = 
MAKE_PAIR(BgL_strz00_18, BgL_arg1059z00_27); } 
return 
BGl_verbosez00zztools_speekz00(
BINT(((long)0)), BgL_list1057z00_26);} }  else 
{ /* ./Engine/engine.scm 65 */
obj_t BgL_arg1064z00_28;obj_t BgL_arg1065z00_29;
BgL_arg1064z00_28 = 
CDR(BgL_srcz00_17); 
{ /* ./Engine/engine.scm 66 */
obj_t BgL_arg1069z00_30;
{ /* ./Engine/engine.scm 66 */
bool_t BgL_test1077z00_32;
{ /* ./Engine/engine.scm 66 */
obj_t BgL_auxz00_115;
BgL_auxz00_115 = 
CAR(BgL_srcz00_17); 
BgL_test1077z00_32 = 
STRINGP(BgL_auxz00_115); } 
if(BgL_test1077z00_32)
{ /* ./Engine/engine.scm 66 */
BgL_arg1069z00_30 = 
CAR(BgL_srcz00_17); }  else 
{ /* ./Engine/engine.scm 68 */
obj_t BgL_arg1080z00_33;
BgL_arg1080z00_33 = 
CAR(BgL_srcz00_17); 
BgL_arg1069z00_30 = 
SYMBOL_TO_STRING(BgL_arg1080z00_33); } } 
BgL_arg1065z00_29 = 
string_append_3(BgL_arg1069z00_30, BGl_string1118z00zzengine_enginez00, BgL_strz00_18); } 
{ 
obj_t BgL_strz00_124;obj_t BgL_srcz00_123;
BgL_srcz00_123 = BgL_arg1064z00_28; 
BgL_strz00_124 = BgL_arg1065z00_29; 
BgL_strz00_18 = BgL_strz00_124; 
BgL_srcz00_17 = BgL_srcz00_123; 
goto BgL_loopz00_19;} } } } }  else 
{ /* ./Engine/engine.scm 58 */
return BFALSE;} } 
}



/* _hello-world */
obj_t BGl__hellozd2worldzd2zzengine_enginez00(obj_t BgL_envz00_59)
{ AN_OBJECT;
{ /* ./Engine/engine.scm 57 */
return 
BGl_hellozd2worldzd2zzengine_enginez00();} 
}



/* imported-modules-init */
obj_t BGl_importedzd2moduleszd2initz00zzengine_enginez00()
{ AN_OBJECT;
{ /* ./Engine/engine.scm 16 */
BGl_modulezd2initializa7ationz75zztools_speekz00(((long)23537), "engine_engine"); 
BGl_modulezd2initializa7ationz75zztools_tracez00(((long)59211), "engine_engine"); 
BGl_modulezd2initializa7ationz75zztools_errorz00(((long)25566), "engine_engine"); 
BGl_modulezd2initializa7ationz75zzwrite_versionz00(((long)36776), "engine_engine"); 
BGl_modulezd2initializa7ationz75zzengine_paramz00(((long)14260), "engine_engine"); 
BGl_modulezd2initializa7ationz75zzengine_compilerz00(((long)3533), "engine_engine"); 
BGl_modulezd2initializa7ationz75zzengine_interpz00(((long)17424), "engine_engine"); 
BGl_modulezd2initializa7ationz75zzengine_linkz00(((long)202), "engine_engine"); 
return 
BGl_modulezd2initializa7ationz75zzbackend_cz00(((long)33592), "engine_engine");} 
}

