<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hi,<div><br></div><div>I think something like :cdrNN as package names (or nicknames thereof) could actually work. I am not very afraid of fragmentation. Newer CDRs that supersede older CDRs can suggest to still use the old package names as well (if they are sufficiently similar enough). There could exist separate CDRs with suggestions for grouping several other CDRs in larger chunks, so you have common package names for a collection of more or less strongly related components.</div><div><br></div><div>Such a scheme could coexist with a more elaborate naming scheme that focuses on avoiding potential name clashes (although I'm not sure the latter would really pays off).</div><div><br></div><div>I see a design mistake in Common Lisp's package system in that the nickname is chosen by the package definition, not by the use site (for example as in (:use-package :horribly-long-package-name :as :hlpn)). That's probably harder to fix.</div><div><br></div><div>Maybe the Pro mailing list is a better venue for discussing such proposals, because that mailing list seems to be frequented by many active users.</div><div><br></div><div>[These are all my very own, very subjective opinions. The fact that I'm involved in maintaining the CDR repository doesn't mean my opinions have more weight than others. Just to be sure I mentioned that... ;)]</div><div><br></div><div><br></div><div>Pascal</div><div><br><div><div>On 28 Apr 2011, at 16:47, Marco Antoniotti wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hi<div><br></div><div>packages and extensions are a pet-peeve of mine. :)</div><div><br></div><div>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).</div><div><br></div><div>Most of my packages are now named as</div><div><br></div><div><font class="Apple-style-span" face="'Courier New'">"IT.UNIMIB.DISCO.MA.XXX.YYY.ZZZ"</font></div><div><br></div><div><b>Then</b> they may have nicknames, which can be</div><div><br></div><div><font class="Apple-style-span" face="'Courier New'">"COMMON-LISP.EXTENSIONS.DATA-AND-CONTROL-FLOW.STUFF"</font> and <font class="Apple-style-span" face="'Courier New'">"CL.EXT.DACF.STUFF"</font> and <font class="Apple-style-span" face="'Courier New'">"STUFF"</font>.</div><div><br></div><div>The naming scheme I adopted for the <font class="Apple-style-span" face="'Courier New'">"<a href="http://COMMON-LISP.EXTENSIONS.CH/">COMMON-LISP.EXTENSIONS.CH</a>"</font> packages is that <font class="Apple-style-span" face="'Courier New'">CH</font> is the name of one of the ANSI chapters.  Of course, one could imagine a <font class="Apple-style-span" face="'Courier New'">"COMMON-LISP.EXTENSIONS.NETWORKING"</font> package and a <font class="Apple-style-span" face="'Courier New'">"COMMON-LISP.EXTENSIONS.MULTIPROCESSING"</font> package for things which do not appear in the ANSI.</div><div><br></div><div>I feel this satisfies my inner need for order.</div><div><br></div><div>Two notes:</div><div><br></div><div><ol class="MailOutline"><li>The whole thing is predicated on an implementation raising an error (a <font class="Apple-style-span" face="'Courier New'">PACKAGE-ERROR</font>?) if two packages share nicknames; this is "mostly" the case.</li><li>The naming scheme is lengthy and - as it was pointed out in the past - kind of "polluting".</li></ol></div><div><br></div><div>I still do think it is worth exploring... Note also that I am <b>not</b> suggesting a file system mapping for packages.</div><div><br></div><div>Having said so, this may be worth a CDR by its own.  Yet, maybe this is not the right venue for such discussion.</div><div><br></div><div>Cheers</div><div>--</div><div>Marco</div><div><br></div><div><br></div><div><br><div><div>On Apr 26, 2011, at 14:39 , Nikodemus Siivola wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div>On 26 April 2011 14:31, Didier Verna <<a href="mailto:didier@lrde.epita.fr">didier@lrde.epita.fr</a>> wrote:<br><br><blockquote type="cite"> Yeah. This is something one needs to do in several occasions already<br></blockquote><blockquote type="cite">(for instance to get MOP functions from packages named differently<br></blockquote><blockquote type="cite">across implementations) and I don't think it's such a big deal.<br></blockquote><br>Unless you use CLOSER-MOP. :)<br><br>I think a semi-standard package for extensions like this would be<br>good, but that's probably just my idealism speaking.<br><br>Cheers,<br><br> -- Nikodemus<br><br>_______________________________________________<br>cdr-discuss mailing list<br><a href="mailto:cdr-discuss@common-lisp.net">cdr-discuss@common-lisp.net</a><br><a href="http://common-lisp.net/cgi-bin/mailman/listinfo/cdr-discuss">http://common-lisp.net/cgi-bin/mailman/listinfo/cdr-discuss</a><br><br><br></div></blockquote></div><br><div>--<br>Marco Antoniotti<br><br></div><br></div></div>_______________________________________________<br>cdr-discuss mailing list<br><a href="mailto:cdr-discuss@common-lisp.net">cdr-discuss@common-lisp.net</a><br>http://common-lisp.net/cgi-bin/mailman/listinfo/cdr-discuss<br></blockquote></div><br><div>
<span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div>--</div><div>Pascal Costanza</div><div>The views expressed in this email are my own, and not those of my employer.</div><div><br></div></span><br class="Apple-interchange-newline">
</div>


<br></div></body></html>