[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-hackers] r7rs modules
From: |
Ivan Raikov |
Subject: |
Re: [Chicken-hackers] r7rs modules |
Date: |
Mon, 12 Nov 2012 08:51:32 +0900 |
I also agree that any changes to the module system should be avoided or be minimally invasive. I really want to start using functors, any mucking around with the module system might destabilize things again.
It seems to me that the dash-renaming scheme of r7rs module names will work in all important cases. If there are library authors obtuse enough to create libraries (foo bar-baz) and (foo-bar baz), perhaps a custom renaming map could be used, but I don't think this would be something we need to worry about a lot.
Ivan
On Nov 12, 2012 12:56 AM, "Felix" <
address@hidden> wrote:
>
> I think the Right Thing is to internally translate "(foo bar)" into
> "foo-bar".
I totally agree with John here.
I think it is crucial not to start breaking everything and messing
with the (already way too complex) module system we have - it works
(most of the time). Let try to avoid changing our current module
syntax. The R7RS folks already went to great lengths to use a
currently unused name for library definitions, so we should take
advantage of this.
Generally, I think R7RS support should be put into an egg, with an
R7RS compliant "import" (the existing one can then be accessed using
"(import (prefix (only chicken import) c:))" or something similarly
awkward. But it would not even be necessary for existing eggs.
Chicken-style modules could freely access R7RS-style modules using the
single-word-module-name (see below).
The core system would only be modified to provide what is
absolutely necessary, including semantic changes to existing
definitions.
>
> An alternative would be to treat "(foo bar)" as a module named
> foo/bar, in which case it would be loaded from a subdirectory.
Subdirectories only add complications (egg-installation and filesystem
layout). What about something like "(foo goo bar-baz)" ->
"foo~goo~bar-baz"? (or "foo.goo.bar-baz"?)
cheers,
felix
_______________________________________________
Chicken-hackers mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/chicken-hackers
- Re: [Chicken-hackers] r7rs modules, (continued)
- Re: [Chicken-hackers] r7rs modules, John Cowan, 2012/11/10
- Re: [Chicken-hackers] r7rs modules, Alex Shinn, 2012/11/10
- Re: [Chicken-hackers] r7rs modules, Felix, 2012/11/11
- Re: [Chicken-hackers] r7rs modules,
Ivan Raikov <=
- Re: [Chicken-hackers] r7rs modules, Peter Bex, 2012/11/12
- Re: [Chicken-hackers] r7rs modules, John Cowan, 2012/11/12
- Re: [Chicken-hackers] r7rs modules, Peter Bex, 2012/11/12
- Re: [Chicken-hackers] r7rs modules, John Cowan, 2012/11/12
- Re: [Chicken-hackers] r7rs modules, Felix, 2012/11/13
- Re: [Chicken-hackers] r7rs modules, John Cowan, 2012/11/13
- Re: [Chicken-hackers] r7rs modules, Alex Shinn, 2012/11/13
- Re: [Chicken-hackers] r7rs modules, Alex Shinn, 2012/11/12
- Re: [Chicken-hackers] r7rs modules, Peter Bex, 2012/11/12
- Re: [Chicken-hackers] r7rs modules, Felix, 2012/11/13