Warning: This is the manual of the legacy Guile 2.2 series. You may want to read the manual of the current stable series instead.
Next: Compiling to the Virtual Machine, Previous: Data Representation, Up: Guile Implementation [Contents][Index]
Guile has both an interpreter and a compiler. To a user, the difference is transparent—interpreted and compiled procedures can call each other as they please.
The difference is that the compiler creates and interprets bytecode for a custom virtual machine, instead of interpreting the S-expressions directly. Loading and running compiled code is faster than loading and running source code.
The virtual machine that does the bytecode interpretation is a part of Guile itself. This section describes the nature of Guile’s virtual machine.
• Why a VM?: | ||
• VM Concepts: | ||
• Stack Layout: | ||
• Variables and the VM: | ||
• VM Programs: | ||
• Object File Format: | ||
• Instruction Set: |