medley icon indicating copy to clipboard operation
medley copied to clipboard

ROW-MAJOR-AREF is in XCL, not CL

Open rmkaplan opened this issue 7 months ago • 4 comments

In CMLARRAY.

Seems like a bug

rmkaplan avatar May 19 '25 22:05 rmkaplan

Probably a CLtL1 to CLtL2 difference, since it's in the "New CLtL array functions" list.

nbriggs avatar May 19 '25 23:05 nbriggs

This could be handled in a manner like I used in PR #1823, but put the action in a different file. (That's assuming that there is some reason that it simply cannot be re-declared in the CL instead of XCL package.)

MattHeffron avatar May 22 '25 22:05 MattHeffron

I have taken some things in XCL and moved them into the LISP / CL package, but I haven't quite had the courage to do it wholesale based on the CLtL2 files. My best guess is that lots of CLtL2 was implemented in the XCL package so you could choose whether you wanted "plain" CLtL1. https://LarryMasinter.net https://interlisp.org

On Thu, May 22, 2025 at 3:54 PM Matt Heffron @.***> wrote:

MattHeffron left a comment (Interlisp/medley#2158) https://github.com/Interlisp/medley/issues/2158#issuecomment-2902797780

This could be handled in a manner like I used in PR #1823 https://github.com/Interlisp/medley/pull/1823, but put the action in a different file. (That's assuming that there is some reason that it simply cannot be re-declared in the CL instead of XCL package.)

— Reply to this email directly, view it on GitHub https://github.com/Interlisp/medley/issues/2158#issuecomment-2902797780, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAIQTK5FHYV5TR7NB3EQM7L27ZIRZAVCNFSM6AAAAAB5O5LJF6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDSMBSG44TONZYGA . You are receiving this because you are subscribed to this thread.Message ID: @.***>

masinter avatar May 23 '25 00:05 masinter

The CLtL2 sources put the CL nickname in the COMMON-LISP package from the LISP package (which breaks all sorts of things, of course). There's a function in there called FLIP-CL, which can be used to move it between LISP, COMMON-LISP, or NOWHERE (not entirely sure why that option exists, tbh). The process is to set it to LISP, load 'PROP the file, flip to COMMON-LISP, and MAKEFILE 'NEW the file to write it out in the right package. Then it can be loaded into a fresh CLtL2 sysout. Bob tried to do the right thing and move most symbols into the right package.

Does anyone know the provenance of the CLTL2 directory? It seems to be missing the Tedit file that explains the FLIP-CL function, though I did find it defined in COMMON-LISP-PACKAGE.

Anzus avatar May 23 '25 01:05 Anzus