Hi
packages and extensions are a pet-peeve of mine. :)
I feel strongly on the subject and I have followed the following conventions in my recent coding (conventions which hinge on a non-standard and unadvertised feature of many implementations: see below).
Most of my packages are now named as
"IT.UNIMIB.DISCO.MA.XXX.YYY.ZZZ"
Then they may have nicknames, which can be
"COMMON-LISP.EXTENSIONS.DATA-AND-CONTROL-FLOW.STUFF" and "CL.EXT.DACF.STUFF" and "STUFF".
The naming scheme I adopted for the "COMMON-LISP.EXTENSIONS.CH" packages is that CH is the name of one of the ANSI chapters. Of course, one could imagine a "COMMON-LISP.EXTENSIONS.NETWORKING" package and a "COMMON-LISP.EXTENSIONS.MULTIPROCESSING" package for things which do not appear in the ANSI.
I feel this satisfies my inner need for order.
Two notes:
The whole thing is predicated on an implementation raising an error (a PACKAGE-ERROR?) if two packages share nicknames; this is "mostly" the case. The naming scheme is lengthy and - as it was pointed out in the past - kind of "polluting".
I still do think it is worth exploring... Note also that I am not suggesting a file system mapping for packages.
Having said so, this may be worth a CDR by its own. Yet, maybe this is not the right venue for such discussion.
Cheers -- Marco
On Apr 26, 2011, at 14:39 , Nikodemus Siivola wrote:
On 26 April 2011 14:31, Didier Verna didier@lrde.epita.fr wrote:
Yeah. This is something one needs to do in several occasions already (for instance to get MOP functions from packages named differently across implementations) and I don't think it's such a big deal.
Unless you use CLOSER-MOP. :)
I think a semi-standard package for extensions like this would be good, but that's probably just my idealism speaking.
Cheers,
-- Nikodemus
cdr-discuss mailing list cdr-discuss@common-lisp.net http://common-lisp.net/cgi-bin/mailman/listinfo/cdr-discuss
-- Marco Antoniotti