libera/#sbcl - IRC Chatlog
Search
15:14:20
luis
Side note: isn't it a bit much to produce different ctors for (make-instance 'foo :x 1) and (make-instance 'foo :x 2)?
15:31:32
luis
Krystof: your suggestion of pre-finalizing all classes (not just those that have ctors!) works! (Except commonqt doesn't like it and some widgets then fail to instantiate for some weird reason. But it's progress nevertheless.)
16:41:00
luis
Krystof: seems to be working, thanks! Pre-finalizing all the classes (or just the subset I care about), then calling SB-PCL::PRECOMPILE-CTORS seems to improve things, assuming I can do this during compilation before saving the image, which I haven't yet tested. And I'm sure someone will be annoyed by an extra minute of compilation time per
16:45:44
luis
_death: so, what was happening was that although I did pre-finalize all the classes mentioned in *all-ctors*, some superclasses didn't have ctors and when those were finalized, that'd invalidate all the ctors for all of their subclasses.
16:47:45
luis
This cascading effect explains why INSTALL-OPTIMIZED-CONSTRUCTOR would only go away on the third run.
19:47:26
Shinmera
luis: Strangely, sb-pcl::precompile-ctors doesn't seem present in my image, even though it is in the sources
20:51:53
luis
Krystof: do you have any pie-in-the-sky ideas for eliminating runtime compilation in ctors?
20:54:10
luis
Naively it seems like perhaps one ctor per class would be enough. What's all this inlining trying to achieve? Avoid keyword argument parsing?