libera/#clasp - IRC Chatlog
Search
22:48:20
karlosz
one note though: the VM will have to be updated to make the pc offset work from the start of the instruction. which might be more natural anyway
22:50:16
Bike
nice. yeah that should be easy, in the clasp vm it will just mean changing some -2s to -3s
22:53:08
karlosz
still should be portable to C++ - i did use a single dispatch closure mechanism thingy
22:54:10
drmeister
Name changes done, cclasp-boehm builds. Running static analyzer and then I'll push everything.
23:21:57
karlosz
drmeister: the compiler needs to learn how to do unwind protect, but other than that, very close
23:38:57
drmeister
Great - once the compiler is done and we start translating it we can compare the output of the CL compiler with the C++ compiler and identify problems quickly.
23:43:39
karlosz
yes. the CL compiler doesn't do anything crazy - it should be translatable to C++ without much fanfare
1:15:05
Bike
loading bytecoded functions shouldn't be hard, right? all their components are dumpable (except maybe constants, but then you couldn't compile-file that anyway)
1:25:05
drmeister
Well, that's a bit of a puzzler isn't it? With compile-file we use the literal compiler to generate code that evaluates to initialize the literals vector.
1:26:59
drmeister
It loads and compiles all of the bclasp source code and clos and then the cleavir code.
1:28:40
drmeister
Later we can interface the literal compiler with the bytecode compiler - but will we need to translate the literal compiler into C++?
1:33:40
Bike
i kind of thought we'd be compile-filing with the bytecode compiler, but i haven't deeply thought it through
1:51:57
drmeister
When we compile with the bclasp compiler or the cclasp compiler we do different things with literals than we do with compile-file. I guess we should look at that.
1:52:49
drmeister
I've been thinking of the bytecode compiler/interpreter as a replacement for the C++ interpreter.
1:58:10
karlosz
yeah, i mean we just bytecode compile and interpret instead of running the interpreter