nlfiedler / bakeneko

Scheme R7RS interpreter in Go
BSD 3-Clause "New" or "Revised" License
2 stars 0 forks source link

Byte code (de)serialization #46

Closed nlfiedler closed 10 years ago

nlfiedler commented 10 years ago

For sake of time, should save compiled byte code and reload rather than compiling the same source repeatedly.

nlfiedler commented 10 years ago

For dealing with circular references in lists and vectors, every pair and vector should be preceded by a datum label (a single byte should suffice). Any subsequent references within that expression would then reference the label (i.e. in place of the pair/vector marker would be a label marker). Basically the binary form of the text s-expression.