freenode/#sicl - IRC Chatlog
Search
0:58:56
no-defun-allowed
What are the outputs for a TOP-LEVEL-ENTER-INSTRUCTION? I can't find it in the Cleavir book.
1:22:00
no-defun-allowed
One of the outputs is called and the output of that is AREFed to lookup a function in the global environment, so it appears different.
1:31:48
Bike
when the closure is created. for a top level enter that's probably when the fasl is loaded
7:07:08
no-defun-allowed
Okay, I think how I get how the static environment (with the HIR evaluator) works now. Just to check: if it's a top level enter, then the first 5 (sicl-compiler:+first-constant-index+) values in the static environment are installed by the host with some common functions, and the function cells corresponding to the function-names are installed after those. Otherwise, the initialize-closure instruction copies in the
7:07:08
no-defun-allowed
first 5 values from the caller, and takes the rest of the values in the static environment as inputs?
7:09:58
no-defun-allowed
Great, thanks. (common objects, rather, NIL and the code object are two of those.)
7:23:24
no-defun-allowed
Probably, I'm not sure if I know enough about the Java virtual machine to compile to it, and it's sort of something to pass time while I'm stumped with what to do on other projects.
8:00:47
no-defun-allowed
Indeed, but if you squint hard enough, it's more like a Smalltalk virtual machine than it isn't; except that the surrounding environment is awful and there's these weird things called "primitive types".