|
From: | Zbigniew |
Subject: | Re: [Chicken-users] How to structure a project |
Date: | Wed, 10 Jan 2007 14:00:36 -0600 |
The various SSAX egg ports also use 'include'. The reason is the source distributions are made up of a bunch of interrelated .scm files, with a lot of internal procedures that you don't want exported to the user. One option is to generate separate .so files and use a module system to restrict the visible namespace. Another is to 'include' the source files into one main file and compile everything into a single .so, exporting only what is necessary. Given that there's no "standard" module system for Chicken or R5RS Scheme in general, I felt the latter was more practical (and it seems to work fine). As a bonus, the internal procedures will be treated as block global without any additional effort on your part. On 1/10/07, John Cowan <address@hidden> wrote:
felix winkelmann scripsit: > There is currently no simple way to have code that is made up of multiple > modules, can be compiled into a single binary and at the same time > can be transparently used in the interpreter (besides using `include'). Not that there's anything wrong with "include". My q-lang egg has three source files: q-lang includes q-utils, which includes q-lolevel.
[Prev in Thread] | Current Thread | [Next in Thread] |