On 5/20/05, Michele Simionato <[EMAIL PROTECTED]> wrote: > On 5/20/05, felix winkelmann <[EMAIL PROTECTED]> wrote: > <snip virtues of require-extension> > > So you are saying there no good use cases for require? Then you should say > in the manual that require is deprecated and it is there only for > backward compatibility. Idem for require-for-syntax if > require-extension can do its job.
No, `require' and `require-for-syntax' are essentially the foundation on top of which `require-extension' is built and are necessary for certain jobs. Deprecation means something else. I will try to document this in a better way (or would you like to help me with that? ;-). > Or there are issues if the library is not packaged as an egg? > I am still a bit confused about that. `require-extension' is identical to `require' for non-extensions (i.e. for normal .scm or .so files). `require-for-syntax' may be needed in certain situations where a extension (or a source file, or a compiled file) should be loaded exclusively at compile-time. It's highly confusing, absolutely right. But the problem behind it is fundamental: how to handle the different phases (compile-time and run-time) and the dependencies of syntactic and non-syntactic extensions in compiled and interpreted code and most importantly: to make this work in a batch-compilation model (PLTs sophisticated module system addresses the first part, but IMHO not the latter). So my approach is to make it easy (well, as easy as I can) to use for the client (the user of an extension) by just using `require-extension', and to push the hard work to the extension- implementor who has to fiddle around with the lower level parts (require/require-for-syntax and the .setup script mumbo-jumbo). cheers, felix _______________________________________________ Chicken-users mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/chicken-users
