freenode/#clasp - IRC Chatlog
Search
0:20:26
Bike
my fix didn't work. i tried reversing the order of run-all calls, and it went from a segfault to a null pointer reference
0:30:12
Bike
file with (defun foo () (cons 'special-variable (load-time-value #.(find-class 'special-variable))))
0:37:27
Bike
so the run-all should include like (setf [special-variable] (intern "SPECIAL-VARIABLE" "CL-USER")), then (setf [ltv] (find-class [special-variable]))
0:38:58
drmeister
stassats: We have a problem cropping up because of how I chop up the RUN-ALL function to keep it short enough for LLVM to compile it quickly.
0:39:02
stassats
but do consider (load-time-value (find-class 'foo)) and (setf (find-class 'foo) nil) (defclass foo () ())
1:50:31
Bike
sbcl does it by updating ctors every time you (setf (find-class ...) ...) but i don't have that hook
2:00:25
drmeister
I always ask myself "WDSD" (What Does Sbcl Do?) It may not be the best idea - but if all I had was that level of performance - I'd be quite happy.
2:02:49
Bike
i mean, basically the loss is the first call is slow (which is also like sbcl) and it adds a hash table lookup
2:07:02
drmeister
When ironclad compilation goes nuts and takes a long time - this message shows up:
2:47:07
drmeister
So - I delayed building the everything in the RUN-ALL until the end of COMPILE-FILE. Everything is pushed into *run-all-objects* and then reversed and used to generate code in RUN-ALL.
4:57:48
drmeister
::notify Bike Could you go into the cl-jupyter project on github and review Kevin's pull request and approve it? I can't do it because I initiated the pull request. I made you an Admin.