On 1/23/07, Abdulaziz Ghuloum <[EMAIL PROTECTED]> wrote:
Both ikarus and chez can batch-compile as well (the procedure compile- file does what it's name suggests). In the running scenario, "pfn.scm" can be compiled to the binary file "pfn.so" which contains both the compile- time and run-time bindings of "pfn.scm" (with procedural macros, you need both anyways). So, we should load "pfn.so" before compiling "weird.scm" to "weird.so" (to initialize the compile-time bindings). We also need to load "pfn.so" before loading "weird.so" (to initialize the run-time bindings). ** I see how this could be hard if you cannot load extensions into the compiler. Chicken can load ".so" files at compile time, no? **
It's fundamentally wrong to put compile-time and run-time code into the same binary. The run-time part It may be compiled for a different OS, a different architecture or a different binary format. The run-time part may link to libraries that are not available on the host system, it may invoke code that can is not intended to run (ctors) at compile-time. True, these are issues that are traditionally ignored in most implementations. cheers, felix _______________________________________________ Chicken-users mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/chicken-users
