freenode/#sicl - IRC Chatlog
Search
3:26:01
beach
I take it you know about this channel, yes? It is mainly for discussions about the SICL project, including the Cleavir compiler framework, but also for related projects like Eclector, Trucler, Concrete Syntax Tree, etc. And we often discuss general ideas about system implmentation.
3:30:59
beach
Since this channel is logged, I use it as a notebook for ideas. That way, the ideas also get immediate exposure to other people who hang out here.
3:44:23
beach
Yesterday, I implemented enough of a generic version of TYPEP, and I tested it for atomic type descriptors. But satiation crashes on this code, probably because I didn't design satiation for EQL specializers.
3:44:25
beach
But I also have another problem that computing the discriminating function of a generic function with all of its methods completely unspecialized. I think I'll attack that problem first. It should be as simple as just testing for that situation and not calling the code for building the automaton then.
3:47:01
beach
The call history is keyed by a list of classes, one class for each parameter that has at least one method specializing on it. So in this particular case, the key must be the empty list, and the value of the key must be a list of all the methods and an effective-method function computed from those methods.
3:50:52
beach
Oh, and I have this bug that hasn't manifested itself yet, and that Bike pointed out. I test for equality of effective-method functions by comparing the list of applicable methods. But, if there is an accessor method in the bunch, the location of the slot might depend on the argument, so I have to be more conservative about the equality test.
3:51:57
beach
A simple, but wasteful, solution would be to never reuse the effective method function.
3:53:20
beach
That might be a good temporary solution though, to avoid getting tripped by this bug. And then to implement something smarter later on, as an optimization.