On Wed, Jun 07, 2017 at 03:54:43PM -0400, John Cowan wrote: > On Wed, Jun 7, 2017 at 2:06 PM, <felix.winkelm...@bevuta.com> wrote: > > Isn't it easy to forget particular identifiers that happen to start with > > "fp" > > as well? I think explicit "rename" imports are clearer and less error > > prone. > > > > My example is bad: you'd want to use it with a module where all the names > begin with the same prefix, or almost all. Another application is to drop > the author's prefix and then add your own: (import (prefix (drop-prefix > srfi-13 string-) s:)) would change all the SRFI 13 identifiers beginning > "string-" to begin "s:" instead (you'd want to change the Scheme > identifiers too). > > An open question is what to do when an identifier is the same as the > prefix: Chibi imports it unchanged, Chez changes it to || (the empty > identifier). A third possibility is to not import it.
What happens if you have an export list that includes both a prefixed identifier and the same unprefixed identifier? So you have (foo my-foo) as an export list and you import it elsewhere as (import (drop-prefix mymodule my-)). To me this seems to introduce a nasty ambiguity. You could warn, but that's ugly and somewhat dangerous, if a new version of the module suddenly contains such an ambiguity: you never know how a user is going to rename. Perhaps a saner approach is to only ever import identifiers that actually have the prefix. Cheers, Peter
signature.asc
Description: Digital signature
_______________________________________________ Chicken-hackers mailing list Chicken-hackers@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-hackers