freenode/#clasp - IRC Chatlog
Search
13:09:31
drmeister
So in the last month I switched to using chrome and gmail, slack, everything via web interface.
14:15:13
drmeister
Nephromancer: I had trouble with everything last night - then chrome died. Right now I'm (1) building cando (2) run your notebook (3) fix the problem you are seeing (4) start another docker build
14:22:54
Bike
figured out how to count-tips again. we're spending like a fifth of the compile time in the gc. i don't know whether that's usual
14:32:01
beach
Speaking of which, I am getting closer to a (hopefully good) design of the SICL garbage collector http://metamodular.com/garbage-collection.pdf
15:27:39
shiho
drmeister: Can I pull new clasp? I pushed my change and pulled new cando yesterday, then I can't open Jupyter lab now. I think I need to rebuild clasp and cando.
15:47:13
Bike
the root of the class hierarchy is actually GCObject, which as far as I can tell, has no fields, no methods, and is not even referred to anywhere except as the superclass of _RootDummyClass, and i don't know what THAT is foreither
19:04:45
Bike
Header_s::validate sounds like a debug function, but it'spretty high up in the profile
19:14:19
drmeister
templatedSizeof is to figure out the size of instances of C++ classes that inherit from Instance_O and another C++ class and are exposed to Common Lisp.
19:14:55
drmeister
The meeting is now over. Martin is extracting me from New York and I've got a couple of hours until he gets here.
19:18:32
drmeister
shiho: I fixed that problem - I'm trying to fix one other thing and then you can pull it and build.
20:07:44
drmeister
Bike: How about if we add the ability to write classes to fasl files and then during cclasp compilation we maintain a list of class definitions (add something to DEFCLASS) and then add some magic to the linking process so that it links in a RUN-ALL that is executed first and it recreates those classes at the start of load time.
20:08:56
drmeister
My new addition to the previous question/summary I made yesterday is that we modify the linking step to inject the RUN-ALL that creates the class objects at load-time.
20:09:49
drmeister
Right - so we modify the defclass macro so that it first checks if the class is already defined.
20:10:50
Bike
if we're doing this for every defclass, we'd just want defclasses to not be executed during startup
20:12:06
Bike
this would be a good trick for first class environments, but we can fake it if we want to
20:12:22
drmeister
I see a problem with parallel build - the parallel builds need to communicate to the parent process about the classes.
20:16:45
drmeister
We could then make one pass through the RUN-ALL's to initialize all classes in all linked modules and then a second pass to run everything.