freenode/#sicl - IRC Chatlog
Search
5:32:51
Harag
beach: I realize last night that I have not done anything about clos in sandbox, and once again sbcl expansions are an issue. So I was thinking is there a way we could mark host cl expansions as safe so we dont have to implement so many cl functions just to get a safe expansion?
5:34:02
beach
I am confused. The term "expansion" is used for macros, but you are talking about functions.
5:35:42
beach
Look, I am not as smart as some people may think. You need to be very explicit and precise with me, or I won't understand.
5:37:50
Harag
basically a lot of code that the user writes ends up being expanded by the cl implementation, and those expansions are full of "internal package calls"
5:39:49
beach
Then you have a few choices. 1. You import the stuff they expand to as well. 2. You use a SICL version that was designed to use a lot less such specific stuff in the expansion, or 3. You rewrite the macro yourself.
5:41:43
Harag
I was hoping for a 4th option, I during expantion mark the expansion as a "host" expansion, that can skip some of the "enviroment" checking
5:43:52
Harag
during macro expansion if you find a cl:[macro] dont lookup the functions in the environment for expansion "internals"
5:46:20
beach
I.e., the expanded code is not traversed at macro-expansion time. It is traversed "lazily" by the compiler, so some internal function may be encountered a lot later, or not at all sometimes.
5:47:05
beach
It has to be that way, because expanded code may contain forms that determine how the rest is going to be compiled. In particular, it may contain other macro calls.
5:48:12
beach
Anyway, you caught me at a bad moment. I need to go buy food early before it gets crowded and before the weather gets hot. So I am off for 2 hours or so.