From: Ray Dillinger <[email protected]> Subject: Re: [r6rs-discuss] Proposed features for small Scheme, part 9: modules Date: Mon, 12 Oct 2009 09:49:32 -0700
> On Mon, 2009-10-12 at 00:31 -1000, Shiro Kawai wrote: > > > (1) make import form recognized after macro expansion, or > > (2) lift cond-expand to the module-level syntax. > > can be restated as a case of > > (1) Removing a restriction or limitation that has made > additional features appear necessary, or > (2) Piling feature upon feature to overcome a restriction > or limitation. > > In the spirit of scheme, I would propose "import" as a binding > form that is fully part of the language, which can be used > wherever binding forms are legal and which establishes bindings > that respect the lexical scope in which the "import" form is > evaluated. And, yes, which is not limited or restricted by > requiring a "before macroexpansion" or "after macroexpansion" > condition. That's fine as far as we know what we are trading. What we gain is a simple language. What we lose is the ability to find out what depends on which without actually running the program. We need that information in *some* way, though---like in package manager, in dependency description in makefile, or in a separate meta-language such as srfi-7, etc. (You may argue that you don't need it yourself, but I guess you can't deny that there are situations that need such information. I personally need it to ensure that the program I installed on a client machine includes everything it needs). We can decide to exclude the meta info from the language, but then I think it is still worth to discuss how we should represent such meta information that complements the lack of such info in the source code. --shiro _______________________________________________ r6rs-discuss mailing list [email protected] http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss
