Closed nbriggs closed 2 years ago
Should we merge Loops and Notecards (back) into the medley (or make them GitHub subprojects so they get (optionally) cloned? I'd like to see it set up so (FILESLOAD LOOPS) (FILESLOAD LOOPS-RULES) would work. Under library/loops directory?
Well, I don’t want to stumble across Loops, Rooms, Notecards in the middle of just working on or with plain Medley, so I definitely don’t want to see these anywhere under library.
I wouldn’t mind if they are in optional directories parallel to the medley sources/ library/.., as subprojects under the main repo.
If you want to use FILESLOAD as a simple interface for projects as well as just files, then I think it has a current heuristic that it will map from a name like LOOPS to the value of LOOPSDIRECTORIES, if it exists. So if LOOPSDIRECTORIES is defined in a site greeting file, you could say
(FILESLOAD (FROM LOOPS) LOAD-LOOPS)
where LOAD-LOOPS would set up whatever relative directory variables it needs to find its own files.
Perhaps a little simpler would be to extend DOFILESLOAD with a little table, typically specified in a site or personal greeting file, that maps symbols like LOOPS, ROOMS, to particular loader files. E.g., an entry like (LOOPS (MEDLEYDIR “..>LOAD-LOOPS”) Then (FILESLOAD LOOPS) would do the right thing.
We could also make that implicit with another heuristic: (FILESLOAD XXX) always looks for a file (MEDLEYDIR “..>LOAD-XXX”).
Or make it explicit in a different way. If the greeting file defines pseudohost {MEDLEY} for the git repository, then LOOPS could map to “{MEDLEY}..>LOAD-LOOPS”. LOOPS also could be defined separately as a more specific pseudohost pointing to some arbitrarily related location, in which case you could map LOOPS to “{LOOPS}LOAD-LOOPS”.
The point is that it is relatively easy to set up one or more simple loading conventions that don't depend on how files are laid out in the local file system, or even how they are set up in the repo.
On Apr 29, 2022, at 9:23 PM, Larry Masinter @.***> wrote:
Should we merge Loops and Notecards (back) into the medley (or make them GitHub subprojects so they get (optionally) cloned? I'd like to see it set up so (FILESLOAD LOOPS) (FILESLOAD LOOPS-RULES) would work. Under library/loops directory?
— Reply to this email directly, view it on GitHub https://github.com/Interlisp/medley/issues/732#issuecomment-1113912526, or unsubscribe https://github.com/notifications/unsubscribe-auth/AQSTUJMQDH37PSNONL2SA4LVHSYVBANCNFSM5QFCUCMA. You are receiving this because you are subscribed to this thread.
Per Ron’s comment I wouldn’t merge them either. Loops is really a separate system. Loops has its LOOPSDIRECTORIES, and has its loadLoops fn, and the initial setup tries to intuit the right subdirectories based in where the initial load is from. Other than the src vs sources I don’t see there’s a lot to do here, but if anything is done, the source needs to be looked at very carefully first.
I merged the source with the compiled files because that is how it was originally before Envos) so the original complaint ha been resolved -- no loops/src no loops/sources, sources for loops are in loops/system (and sources for truckin are in truckin, not truckin-src etc.)
We should either rename the
loops/src
directory toloops/sources
or fix theLOADLOOPS
code to expectsrc
.