freenode/#sicl - IRC Chatlog
Search
9:16:13
beach
Yesterday, I was kind of flummoxed. I had finished my ELS presentations and I did not know what to work on. After ELS, I need to make a serious plan on how to proceed with SICL.
9:16:52
beach
Today, I started with cleavir-lexical, the one that is supposed to replace cleavir-environment and that uses Trucler.
9:22:31
beach
I think the way to proceed is for me to look at every line of code written by me or someone else, make sure I understand what it does, and check whether there are better ways of doing it.
9:36:41
beach
So here is a general question with respect to Trucler and cleavir-lexical: What should be the division of labor between Trucler, cleavir-lexical, and sicl-global-environment?
9:38:14
beach
So no class information, no deftype information, etc. There has to be some stuff though, like whether a compiler macro is associated with a function or a macro.
9:40:33
beach
If so, there needs to be an additional protocol that Cleavir can use for those things. And then, what is the difference between that protocol and the sicl-global-environment protocol. It is probably a subset, but should it be defined as such?
9:41:52
beach
I suppose to answer that question, we need to make a complete list of what Cleavir might want to query the global environment about.
9:45:34
beach
Like, right now, cleavir-environment has a generic function TYPE-EXPAND which is like MACROEXPAND but for types.
9:46:50
beach
And sicl-global-environment has a generic function TYPE-EXPANDER that returns a function (or NIL) for expanding a type, sort of like MACRO-FUNCTION.
9:50:29
beach
Interestingly, Kildall calls cleavir-env:type-expand, but SICL does not define any method on that generic function, so currently, I can't use Kildall with SICL.