samth
2018-9-5 18:06:22

@mflatt a question about your recent places work (particularly 7faf874000edd34c05e154db18) — right now, the serialized bytecode (or fully-expanded code) generates literal boxes where the source code has calls to unsafe-make-place-local; in the bytecode those are literal mutable boxes (which I had not previously encountered). Is the bytecode supposed to support mutable literals? Is this the right thing happening in bytecode generation for the expander? Are we bootstrapping something wrong?


mflatt
2018-9-5 18:29:14

Looks like I accidentally defined unsafe-make-place-local as a folding primitive. That explains the literal boxes in bytecode, and I’ll fix that, but it shouldn’t happen in the fully expanded code (e.g., not in “startup.inc”).


cadr
2018-9-5 18:36:38

@mflatt @samth I only observed that in the bytecode, more clearly in make decompile