unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
* further guile-vm integration
@ 2008-08-20 20:50 Andy Wingo
  2008-08-22  2:30 ` Han-Wen Nienhuys
  2008-08-22 19:23 ` Ludovic Courtès
  0 siblings, 2 replies; 5+ messages in thread
From: Andy Wingo @ 2008-08-20 20:50 UTC (permalink / raw)
  To: guile-devel

Hello all,

The `vm' branch in the guile repo is coming along nicely. It fully
self-compiles, passes test suites, has a really useful repl, etc etc.
There are some problems with call/cc that will be fixed in the future,
but it's mostly correct.

So where to from here? I was making a long list, and ended up deciding
that the first priority is to integrate the VM code into libguile
itself, and thus into the standard `guile' binary. (Currently it builds
a guile-vm binary that links to libguile-vm, which links to libguile.)

The reasons for this, from Guile's perspective, are twofold:

  1. Make module compilation and load-compiled work out "of the box".

  This means that you should be able to make .go files for any module,
  normally as a part of package installation, and they should be
  loadable by guile without any problems or extra configuration.

  2. To improve the load time of Guile itself.

  Loading compiled modules is *much* faster than loading source modules
  -- it's a simple mmap-and-go approach. Compiling boot-9.scm is going
  to be great. Using psyntax is going to have no cost penalties. Having
  guile's modules be compiled will also lead to runtime speed
  improvements in Guile itself.

So I'm going to work on moving the source files over to the libguile/
directory, and to start thinking about the modules. I like that
guile-vm's modules are in a separate namespace (well two, actually --
(system ...) and (language ...)), but I do not intend to move ice-9
things into that hierarchy, to avoid breaking existing code.

User-level code should see no changes, other than speed improvements :)

Let me know if you have thoughts about this plan! My hope would be that
once there are no or very few and solvable regressions, we could merge
this to master and call it 1.10 or 2.0.

Andy
-- 
http://wingolog.org/




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

end of thread, other threads:[~2008-08-23 18:12 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-08-20 20:50 further guile-vm integration Andy Wingo
2008-08-22  2:30 ` Han-Wen Nienhuys
2008-08-22  7:43   ` Ludovic Courtès
2008-08-22 19:23 ` Ludovic Courtès
2008-08-23 18:12   ` 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).