Thomas Lord scripsit:

> Why not just stick to the much simpler REQUIRE and use naming
> conventions to distinguish exported from internal definitions in
> a library?

Naming conventions collide: some day there may be more than one Tom Lord
writing Scheme code.  Name prefixing puts the library *user* in control
of the conventions rather than the library author.  (The other import
specifications, "only", "except", and "rename", support trivial special
cases: I wouldn't die to see them go.)

> Or just write libraries in a style (a traditional style, no less)
> with only exported bindings defined at the top level?

I consider that an unnatural constraint on my code style.  I prefer to
write all named procedures at top level unless they actually reference
identifiers that are bound in some other procedure.

> There's nothing "of the essence" about the chicken module system.
> I presume it works very nicely in the context of Chicken but it seems
> kind of redundant and ad hoc and it adds implementation complexity -
> all of which I think disrecommends it for small Scheme.

There's nothing "of the essence" about map and for-each either, but we
don't want to give them up.

-- 
There is no real going back.  Though I          John Cowan
may come to the Shire, it will not seem         [email protected]
the same; for I shall not be the same.          http://www.ccil.org/~cowan
I am wounded with knife, sting, and tooth,
and a long burden.  Where shall I find rest?           --Frodo

_______________________________________________
r6rs-discuss mailing list
[email protected]
http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss

Reply via email to