<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hi,<div class=""><br class=""></div><div class="">1) I believe package-local nicknames are very useful. Being able to use abbreviations and avoiding conflict between nicknames from the use site are just good ideas.</div><div class=""><br class=""></div><div class="">2) I don’t believe hierarchical package names are useful. That’s a Javaism which just makes things too complicated (especially if they then also are reflected by the directory hierarchy - beurk ;). Also, I agree with Kenny that splitting libraries into too fine-grained small little packages is not a good recipe for organizing your projects. Lisp packages want to be big, and there is no major disadvantage in doing so, and I fear that hierarchical package names encourage unnecessary fine-grained splitting. That just creates visibility problems, and distract from solving /actual/ problems.</div><div class=""><br class=""></div><div class="">Basing package names on domain names provides the illusion that you have unique names, but domain names come and go, companies change owners, repositories move to different hosting servers, etc., etc., so they are not as stable as one might think. If people use sufficiently long package names that can then be renamed locally using package-local nicknames, that’s sufficient, IMHO.</div><div class=""><br class=""></div><div class="">My primary CL implementation is LispWorks, so I don’t use package-local nicknames in practice, but I have used other languages with similar features (most notably Oberon), and they were just very handy.</div><div class=""><br class=""></div><div class="">I hope this helps.</div><div class=""><br class=""></div><div class="">Pascal</div><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On 30 Dec 2015, at 00:56, Kenneth Tilton <<a href="mailto:ken@tiltontec.com" class="">ken@tiltontec.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class="">Packages are over-rated. We lived (and suffered) with packages for months and when I finally rolled everything up into one package it presented zero problems and ended a steady stream of problems. As one Lisp venerable said, "It was a package problem. It is always a package problem." </div><div class="gmail_extra"><br class=""><div class="gmail_quote">On Tue, Dec 29, 2015 at 6:52 PM, Alessio Stalla <span dir="ltr" class=""><<a href="mailto:alessiostalla@gmail.com" target="_blank" class="">alessiostalla@gmail.com</a>></span> wrote:<br class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class=""><div class=""><div class=""><div class=""><div class=""><div class=""><div class="">Hi everyone,<br class=""><br class=""></div>I'd like to run a little poll among experienced Lisp developers. The topic is the usage in the wild of the extensions to the package system provided by various implementations. My apologies to people who are subscribed to the ABCL mailing list, where some time ago I submitted the same questions getting back several insightful answers but no actual data.<br class=""><br class=""></div>So, here is how it is. I'm working on a novel idea (I hope) regarding symbols and packages; I won't go into the details now. It suffices to say that there is some overlap with features offered by certain Lisp implementations, namely:<br class=""><br class=""></div> * package-local nicknames: the ability to specify, for each package, a list of nicknames for other packages which are in effect only in that package; available on ABCL and SBCL (<a href="http://www.sbcl.org/manual/#Package_002dLocal-Nicknames" target="_blank" class="">http://www.sbcl.org/manual/#Package_002dLocal-Nicknames</a>) and possibly other implementations I'm not aware of.<br class=""></div> * "Hierarchical" packages: a naming convention for packages understood by the reader and a few support functions, which allow to have concise nicknames for a group of closely related packages, such as com.foo.mylib.api and com.foo.mylib.implementation. Found natively in Allegro CL (<a href="http://franz.com/support/documentation/current/doc/packages.htm" target="_blank" class="">http://franz.com/support/documentation/current/doc/packages.htm</a>) and in an open-source library by P. Bourguignon.<br class=""><br class=""></div>My questions:<br class="">1) First and foremost, is anybody actually using those features? What are you using them for?<br class=""></div>2) If yes, how useful are they for you? What shortcomings do you find in them?<br class=""></div>
</blockquote></div><br class=""><br clear="all" class=""><div class=""><br class=""></div>-- <br class=""><div class="gmail_signature"><div dir="ltr" class=""><div class=""><div dir="ltr" class=""><div dir="ltr" class="">Kenneth Tilton</div><div dir="ltr" class="">54 Isle of Venice Dr<br class=""><div class="">Fort Lauderdale, FL 33301</div><div class=""><br class=""></div><div class=""><a href="mailto:ken@tiltontec.com" target="_blank" class="">ken@tiltontec.com</a></div><div class=""><a href="http://tiltontec.com/" target="_blank" class="">http://tiltontec.com</a><br class=""></div><div class=""><span style="font-size:12.8000001907349px" class="">@tiltonsalgebra</span><br class=""></div><div class=""><br class=""></div><div class="">646-269-1077</div><div class=""><br class=""></div><div class="">"In a class by itself." <i class="">-Macworld</i></div><div class=""><br class=""></div><div class=""><br class=""></div></div></div></div></div></div>
</div>
</div></blockquote></div><br class=""><div class="">
<div class=""><span style="font-family: Menlo-Regular; font-size: 11px;" class="">--</span><br style="font-family: Menlo-Regular; font-size: 11px;" class=""><span style="font-family: Menlo-Regular; font-size: 11px;" class="">Pascal Costanza</span><br style="font-family: Menlo-Regular; font-size: 11px;" class=""><span style="font-family: Menlo-Regular; font-size: 11px;" class="">The views expressed in this email are my own, and not those of my employer.</span></div><div class=""><span style="font-family: Menlo-Regular; font-size: 11px;" class=""><br class=""></span></div><br class="Apple-interchange-newline">
</div>
<br class=""></div></body></html>