freenode/#sicl - IRC Chatlog
Search
16:11:03
Colleen
Bike: heisig said 8 hours, 14 minutes ago: The question is, should Trucler include functions for reading implementation-defined optimize info? Since they are implementation-defined, that particular implementation can simply subclass optimize-description and provide custom accessors.
16:11:42
Bike
i could have cleavir mandate that describe-optimize needs to return a special cleavir subclass of optimie-dscription, i guess
17:40:16
Bike
::notify heisig brief description of what i'm thinking wrt trucler optimize info https://gist.github.com/Bike/daa1bf795c8b718022856ac4cb15175a
19:31:12
jdz
There was a discussion about branch prediction here recently, so I'll just leave this here: https://blog.cloudflare.com/branch-predictor/
19:32:38
Bike
the "Obviously, this code could be improved" bit is a little weird to me because I'm pretty sure modern C compilers can rewrite that as a multiway branch/table lookup/whatever no sweat. sorta mentions that in the footnote though.
19:38:22
jdz
This sounds very good for all kinds of checks: "The takeaway is clear - you can have as many never-taken branches as you want, without incurring any cost."
1:01:40
karlosz
Bike: i was reading the make-load-form specification pretty carefully today; i don't know if you thought about it already but could you base an object graph copier/serializer based on the make-load-form mechanism?
1:02:46
Bike
yeah, i've tested that a bit in something else and it works. but you have to touch a file for it, which is not great.
1:05:08
karlosz
hm, i guess that's true, since the file compiler needs to be involved to actually do the work
1:06:16
karlosz
maybe just writing a 'liter' customized version of the literal dumper specifically for cloning in-memory objects which piggybacks off of make-load-form
1:07:01
Bike
well the nature of make-load-form is that it needs something compiler-like, since it checks circularity by walking the forms looking for constants
1:14:28
karlosz
i'm currently working on cleaning up some aspects of sbcl bootstrap which pretty intimately tie into the loader, file-compiler, and literals handling so i thought it could be adapted to the problem of cloning in memory stuff
1:14:58
karlosz
it's actually weird that there's this mechanism to reconstruct serialized object graphs but not also one just to copy since the protocol is basically identical
1:16:20
Bike
i think the way the compile-file mechanism is form based kind of throws a wrench in using it in any lighter weight way
1:20:16
karlosz
(m-v-b (c-f i-f) (make-load-form some-flat-struct) (eval c-f) (eval i-f)) works fine for simple stuff