<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto">Dear Alexander,<div><br></div><div>Thank you for reaching out to the CCL community. (I am responding in a less-than-official capacity because currently CCL has only privately-funded and volunteer maintainers plus enthusiastic users, but no officials.)</div><div><br></div><div>I read through your well-thought-out Package Local Nicknames (PLN) proposal. It does indeed look like a useful facility—even one I could see using in my own professional work. </div><div><br></div><div>My main concerns are 1) compatibility across <b>all</b> common Lisp platforms, 2) the maintenance burden on implementers, and 3) the need for a comprehensive test suite. Add to that my wish to see 4) a healthy set of real-usage examples and 5) a discussion of how this feature generally impacts implementations (i.e. where the necessary “hooks” are, and any unexpected “gotchas”). </div><div><br></div><div>The biggest danger of any software development in mature environment(s) is the risk of breaking existing code—in this case the CL implementations themselves and (of course) existing user code. [e.g. should users be able to disable PLNs?]</div><div><br></div><div>Have you considered writing a source to source translator that rewrites code using PLNs into ANSI Common Lisp? As I “think out loud,” (meaning I have not thought about this long) I could imagine a similar, but lighter-weight facility being introduced more surgically (more compatibly and visibly obvious) using a reader extension. </div><div><br></div><div>To conclude: You have an impressive list of supported implementations. What are the current status and past responses of and outreach to the remaining commercial vendors and non-commercial maintainers? </div><div><br></div><div>I look forward to continued discussion. </div><div><br></div><div>Best regards, </div><div><br id="lineBreakAtBeginningOfSignature"><div dir="ltr">--Tim McNerney </div><div dir="ltr"><br><blockquote type="cite">On Jul 6, 2024, at 12:55, Alexander Fedorov <varedif.a.s@gmail.com> wrote:<br><br></blockquote></div><blockquote type="cite"><div dir="ltr"><span>Dear all,</span><br><span></span><br><span>Over 10 years ago, SBCL implemented the Package-Local Nicknames (PLNs)</span><br><span>extension. Since then, PLNs have also been adopted by multiple</span><br><span>implementations (ABCL, CCL, ECL, Clasp, Allegro CL and LispWorks) and</span><br><span>are now widely used in many projects.</span><br><span></span><br><span>However, PLNs are still considered experimental, as stated in the SBCL</span><br><span>manual, since there is no formal specification for them, and each</span><br><span>implementation interprets various corner cases differently. While the</span><br><span>need for a specification has been previously discussed, I was unable</span><br><span>to find any publicly accessible draft for one.</span><br><span></span><br><span>Therefore, I have drafted a specification intended to become a CDR</span><br><span>document. I initially wrote this draft about a year ago and have</span><br><span>recently revised it. You can find the latest version here:</span><br><span>https://gleefre.github.io/cdr-package-local-nicknames/index.html.</span><br><span></span><br><span>There are currently nine unresolved standardization issues, each with</span><br><span>at least one proposed resolution. Input on those issues would be</span><br><span>particularly helpful, but any feedback is welcome!</span><br><span></span><br><span>P.S. I am sharing this link across multiple platforms to reach as many</span><br><span>lispers as possible. This includes various mailing lists (Lisp Pro,</span><br><span>CDR-discuss and -devel for various CL implementations); IRC channels</span><br><span>(#commonlisp and implementation-specific ones); the Lisp Discord</span><br><span>server; several Telegram groups; and a post on Reddit. If you have any</span><br><span>suggestions for additional places to share the link, please let me</span><br><span>know.</span><br><span></span><br><span>My apologies to those receiving this message multiple times.</span><br><span></span><br><span>Best regards,</span><br><span>Alexander Fedorov.</span><br></div></blockquote></div></body></html>