I'm all for picking the CDR again -- but I probably don't have the cycles to hack on the SBCL implementation very much.

The conceptual origin of SBCL/ABCL -style package local nicknames is Lisp Machine. I mostly tried to bring the ideas there in line with modern sensibilities and address things like read/write consistency.

If you want to look at all the things it would be cool to support (conceptually), the Scheme module system pretty much does it all -- but obviously details and implementations would be quite different for CL.

Nice to see people thinking about this stuff. :)

Cheers,

 -- nikodemus


On Fri, Nov 27, 2015 at 5:39 PM, Rudi Schlatte <rudi@constantly.at> wrote:

> On Nov 27, 2015, at 15:46, Marco Antoniotti <marcoxa@cs.nyu.edu> wrote:
>
>>
>> On Nov 27, 2015, at 15:42 , Pascal J. Bourguignon <pjb@informatimago.com> wrote:
>>
>> Alessio Stalla <alessiostalla@gmail.com>
>> writes:
>>
>>> Hello list,
>>>
>>> long time no see :)
>>>
>>> I'm once again experimenting on ABCL with a sort of a pet peeve of
>>> mine: hierarchical symbols (aka symbols as packages aka symbol/
>>> package conflation). If I get good results I'll submit an article to
>>> the next ELS. Btw, is anyone going?
>>>
>>> I've seen that, since the time when I was actively contributing to
>>> it, ABCL has gained package-local nicknames (or, they were already
>>> there and I never noticed or I forgot about them). Since my
>>> experiment is, I suppose, a superset of what said nicknames have to
>>> offer, I'm curious: is anybody using them? How? Are they a novel idea
>>> of ABCL's, or were they inspired by other implementations? Do they
>>> implement some specification (e.g., a CDR)?
>>
>> I implemented recently allegro's hierarchical package in conforming CL
>> cf. https://gitlab.com/com-informatimago/com-informatimago/blob/master/common-lisp/lisp/relative-package.lisp
>>
>> and this week, phoe_krk implemented his own version of package local
>> pseudonyms (like package nicknames, but separate):
>> https://github.com/phoe-krk/pseudonyms
>>
>> Perhaps it'd really be time to write a CDR and implement something good
>> and common on all implementations?
>
> I am game.  How do you guys want to proceed?

Ages ago, Nikodemus and me started writing a cdr, but somehow got stuck along the way.  I attach what we came up with, this could be a good starting point.

(Hi from another lisper-in-exile :) )

Rudi