freenode/#sicl - IRC Chatlog
Search
10:30:35
beach
Trucler needs to find generic versions of standard functions MACRO-FUNCTION and COMPILER-MACRO-FUNCTION.
10:41:10
beach
Maybe macro-function and symbol-macro-function were are not meant to be called at compile time.
10:42:11
beach
Oh, but wait, nothing prevents some local macro expander from calling them on a lexical environment.
10:44:45
beach
We can have the standard Common Lisp functions trampoline to a generic version that is not defined by Trucler.
10:47:28
beach
I was going to say that there can be a method on the generic versions that call TRUCLER:DESCRIBE-FUNCTION, but that is not possible, because TRUCLER:DESCRIBE-FUNCTION requires a CLIENT argument which is not available at run time.
10:47:48
beach
So back to the idea that Trucler needs to define generic versions of those functions.
16:04:44
beach
I guess I'll just implement a direct mirror of CLEAVIR-ENV:SYMBOL-MACRO-EXPANSION, CLEAVIR-ENV:MACRO-FUNCTION, and CLEAVIR-ENV:COMPILER-MACRO-FUNCTION for Trucler. I can always change it later if it turns out to be the wrong thing.
16:05:51
beach
I am a bit "worried" though. There are more dependencies in SICL on CLEAVIR-ENV than I had imagined. So I need to update that code for Trucler, which means I will break the current boot procedure.
16:07:18
beach
So I see two choices: 1. Try to patch the current boot procedure for use with Trucler so that it still works in case someone wants to try it out. 2. Just accept that the current boot procedure is broken, since I am working on a new one anyway.
16:21:42
beach
Maybe I don't need to "worry" that much. There are maybe 50 occurrences of references to cleavir-env in SICL itself. I think I can handle that. I mean, there are more, but they belong to modules that would become obsolete with this current modification anyway.