Also consider using Ben’s package: https://github.com/bennn/zordoz <https://github.com/bennn/zordoz>
— Matthias > On Nov 7, 2019, at 8:08 AM, Matthew Flatt <[email protected]> wrote: > > This paper provides the only high-level description of bytecode and the > VM that I can remember: > > https://plt.eecs.northwestern.edu/racket-machine/ > > The `compiler/zo-structs` library and its documentation in effect > describe the bytecode content (but not its encoding). "Bytecode" is > fairly close to expanded Racket --- so much that `compiler/decompile` > can reconstruct a good facsimile of bytecode in expanded form, and > looking at the implementation of `cmopiler/decompile` might be helpful. > > The start of "eval.c" in the implementation provides an overview of > compiler passes, but that might not be quite what you're looking for. > > At Thu, 7 Nov 2019 01:46:17 -0500, Joshua Judson Rosen wrote: >> Hi, >> >> I'm trying to learn about Racket's bytecode and VM (after skimming through >> the >> docs, >> I guess I'm specifically interested in the "3m" VM and the "zo" bytecode?). >> >> Trying to find answers to questions like "is it a stack-machine, a >> register-machine..., >> something else?"; "what are the bytecode operators and their operands"; >> "what sort of verification is done while loading bytecode".... >> >> I've been a longtime user of Guile and have recently started reading through >> Guile's VM documentation, and ideally I'm trying to find something similar >> to >> this >> but for Racket: >> >> >> https://www.gnu.org/software/guile/manual/html_node/A-Virtual-Machine-for-Guile >> .html >> >> Does such a thing exist? >> >> If not, could someone perhaps give me some specific advice as to where in >> the >> code >> I should look to find this info? >> >> >> -- >> "Don't be afraid to ask (λf.((λx.xx) (λr.f(rr))))." >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Racket Developers" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/racket-dev/c9b29384-df5e-72fc-5ff9-5bd64418b0 >> 06%40geekspace.com. > > -- > You received this message because you are subscribed to the Google Groups > "Racket Developers" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/racket-dev/5dc41751.1c69fb81.cdf16.aaa5SMTPIN_ADDED_MISSING%40mx.google.com. -- You received this message because you are subscribed to the Google Groups "Racket Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-dev/D49D6CB0-3BC9-421D-AEB6-EC86E793E7B4%40felleisen.org.
