freenode/#sicl - IRC Chatlog
Search
13:48:38
pfdietz
I have grown cold on NIL punning. For that matter, I've grown cold on improper lists.
13:50:31
pfdietz
I put in a bug report for SBCL, where ELT with indexes far beyond the end of the list takes a very long time to signal the error. Why:? Because the loop is not checking for NIL, except after the index counts down to zero.
13:57:44
beach
Yes, I think it is safe to assume that very little modern code relies on (CAR NIL) => NIL.
14:16:34
beach
I think I should document what several operators "mean" in the different bootstrapping environment. Like what does it "mean" to call MAKE-INSTANCE in each environment? What classes are acceptable to MAKE-INSTANCE in that environment? Where does it look up its class if a symbol is given? Same thing for other operators that look things up, like ENSURE-CLASS, ENSURE-GENERIC-FUNCTION, etc.
14:17:14
beach
By having those written down, whenever I get confused, I can just read the description, rather than trying to figure out the information.
14:31:00
jcowan
I thought of another application of improper lists besides lazy sequences: a poor man's persistent hash table consisting of an a-list with a hash table in the tail.
14:31:50
jcowan
you initialize the hash table with your "global" keys and values, and then wrap it in a cons and treat it as a normal hash table, aconsing new keys and values as needed