"felix winkelmann" <[EMAIL PROTECTED]> writes: > On 5/25/07, Graham Fawcett <[EMAIL PROTECTED]> wrote: >> On 5/25/07, felix winkelmann <[EMAIL PROTECTED]> wrote: >> > Modules to be "import"ed by client code should always be >> > available in source code form: the source code is processed >> > by the syntax-case macro expander and binding information >> > (of normal variables and macros) is recorded. So to create >> > an extension, install both the compiled .so and the source files. >> >> Conceivably, a different module-system could be designed that did this >> processing at compilation time? Perhaps library source would need to >> be available at application-compilation time, or perhaps the library >> source could be distilled into an export-directive that contains the >> details required by the importer (including syntax definitions)? > > I'm not quite sure what you mean here: the binding resolution while > importing is already done at compile time (unless you are interpreting > code, of course). Creating a condensed module definition from the source > file might be possible, though, and would probably speed up compile > times somewhat. On the other hand it might not really be worth the trouble. > > Ideally, we need a well hackable, understandable module system that > supports syntax-rules and that is static enough to be used with batch > compilation. I haven't found such a thing yet. > What about Scheme 48's module system? FWICT, it supports batch compilation (there is a compiler for s48 packages at [0]). It's also pretty nice otherwise; you can read about it on the CSW[1] or in the "Nearly complete manual" [2].
[0] http://mumble.net/~campbell/darcs/s48-comfasl/ [1] http://community.schemewiki.org/?scheme48-module-system [2] http://mumble.net/~campbell/s48-refman/html/Module-system.html#Module-system Cheers, Rotty -- Andreas Rottmann | [EMAIL PROTECTED] | [EMAIL PROTECTED] | [EMAIL PROTECTED] http://rotty.uttx.net | GnuPG Key: http://rotty.uttx.net/gpg.asc Fingerprint | C38A 39C5 16D7 B69F 33A3 6993 22C8 27F7 35A9 92E7 v2sw7MYChw5pr5OFma7u7Lw2m5g/l7Di6e6t5BSb7en6g3/5HZa2Xs6MSr1/2p7 hackerkey.com Latein ist das humanoide Äquivalent zu Fortran. -- Alexander Bartolich in at.linux _______________________________________________ Chicken-users mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/chicken-users
