Previous: , Up: Getting started   [Contents][Index]


2.3 TEMPORARY: Live hacking “fix”

The traditional way to hack Guile is to use Geiser, both evaluating from some foo.scm file/buffer with more “permanent” code via, for example, the C-x C-e / C-x C-b / C-x C-k commands to evaluate an expression, evaluate a whole buffer, or compile a buffer’s content; and switching back and forth between that and the (usually called *Geiser Guile REPL*) experimental-hacking-and-debugging REPL.

This works with Goblins, but Geiser does some things to temporarily redirect output/error ports when doing the file/buffer oriented evaluation. Unfortunately, this results in Goblins vats potentially breaking due to spawning a separate thread which inherits these temporarily redirected ports, which are then closed when the evaluation succeeds. There is a long-term plan to deal with this, but in the meanwhile, whenever you start a Guile / Geiser hacking session, first execute:

> (use-modules (goblins))

… from the *Geiser Guile REPL*. Otherwise vats may mysteriously “hang”. This annoyance will be fixed soon!