unofficial mirror of bug-guile@gnu.org 
 help / color / mirror / Atom feed
* bug#24363: Clarify the VM docs
@ 2016-09-04  5:04 Wilfred Hughes
       [not found] ` <handler.24363.B.147296552715192.ack@debbugs.gnu.org>
  0 siblings, 1 reply; 6+ messages in thread
From: Wilfred Hughes @ 2016-09-04  5:04 UTC (permalink / raw)
  To: 24363

[-- Attachment #1: Type: text/plain, Size: 1059 bytes --]

The docs currently state:

> The easiest (and most fun) way to depend on a virtual machine is to
implement the virtual machine within Guile itself. This way the virtual
machine provides what Scheme needs (tail calls, multiple values, call/cc)
and can provide optimized inline instructions for Guile (cons, struct-ref,
etc.).

This is a little confusing for new readers (like myself), who may consider
Guile to by synonymous with Scheme.

This led to interpret this as 'the VM is implemented in Scheme', which has
a bootstrapping problem (what actually interprets your bytecode?).

Instead, I propose adding an additional sentence:

> The easiest (and most fun) way to depend on a virtual machine is to
implement the virtual machine within Guile itself. Guile contains a
bytecode interpreter (written in C) and a Scheme to bytecode compiler
(written in Scheme). This way the virtual machine provides what Scheme
needs (tail calls, multiple values, @code{call/cc}) and can provide
optimized inline instructions for Guile (@code{cons}, @code{struct-ref},
etc.).

[-- Attachment #2: Type: text/html, Size: 1225 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2017-03-01  9:07 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-09-04  5:04 bug#24363: Clarify the VM docs Wilfred Hughes
     [not found] ` <handler.24363.B.147296552715192.ack@debbugs.gnu.org>
2016-09-04  5:08   ` bug#24363: Acknowledgement (Clarify the VM docs) Wilfred Hughes
2016-09-04 16:14     ` Andy Wingo
2016-09-05  0:23       ` Wilfred Hughes
2016-09-05 18:52         ` Andy Wingo
2017-03-01  9:07           ` Andy Wingo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).