What about 3rd party modules? For example, should http://planet.racket-lang.org/package-source/dherman/syntactic-closures.plt/1/0/syntactic-closures.ss provide syntactic-closures-compile, syntactic-closures-execute and syntactic-closures-scheme-syntactic-environment ?
Collections may be renamed. Eventually collection names will become longer, because they have to be unique (like in java: org.apache.commons.lang.builder.ToStringBuilder). Besides we have modules and prefix-in. Even in Common Lisp, Google propose omit prefixes in names: http://google-styleguide.googlecode.com/svn/trunk/lispguide.xml?showone=Omit_library_prefixes#Omit_library_prefixes I propose the same: every module should provide only short names without prefixes. Modules like `racket' should re-export the names with approptiate prefixes. Something-like syntax/bound-id-table.rkt (provide ref set set! remove ...) syntax/id-table.rkt (require (prefix-in bound-id-table- "bound-id-table.rkt")) (provide bound-id-table-ref bound-id-table-set ...) Fri, 04 Jul 2014 19:30:44 -0400 от Neil Van Dyke <n...@neilvandyke.org>: >For documented public API of modules that are part of core Racket, >shouldn't pretty much all the identifiers be descriptive enough to be >unique within the scope of core Racket? (Excepting name conflicts from >SRFIs and teaching languages?) > >I've now noticed generic API names like "make" and "render" in core >Racket modules written by, I think, 3 different very smart core Racket >developers. I don't understand why we're still doing this. Was it for >use with the units&signatures (which are more trouble than they're >worth, IMHO)? > >For code using these APIs, for readability (since any generic names in a >module are relative to what that module is about, not the possibly many >modules that module uses), I end up using "prefix-in" on modules with >generic API names, which is still harder to read than natural identifiers. > >And even if I do the "prefix-in" like "foo-lib:", with a colon on the >end, "foo-lib:make" is still harder for someone reading the code to look >up the identifier in Racket doc search, compared looking up a unique API >identifier like "make-foo" or "foo-make". > >Neil V. > >_________________________ > Racket Developers list: > http://lists.racket-lang.org/dev -- Roman Klochkov
_________________________ Racket Developers list: http://lists.racket-lang.org/dev