On Fri, 27 May 2011, Jay Reynolds Freeman wrote: > the files that contain module definitions, and implement "module" > as syntax that creates some kind of a functional object that responds > appropriately to "import" with the various <import set>s. That looks > like a real mess to do, but I will take your (collective) word that the > R6 module syntax is worth it for the sake of separately compiled > Scheme implementations.
Even interpreters have needs to load libraries of bindings, either system bindings (say, the usual R5RS bindings) or user libraries, while NOT exposing auxiliary bindings to the user. It is mostly possible to do this hiding of auxiliary bindings with LET(REC(*)) or LET(REC)-SYNTAX, but this is usually very awkward for large libraries since this is really not what these primitives are meant for. What I am trying to say is that modules are primarily for managing, hiding, and exposing bindings, to build programs in a compositional manner. This is just as important if your system is interpreted. This has nothing to do with separate compilation. _______________________________________________ Scheme-reports mailing list [email protected] http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports
