# Using Goblins in Geiser

**URL:** <https://community.spritely.institute/t/using-goblins-in-geiser/589>\
**Category:** Spritely Goblins\
**Created:** [October 22, 2024, 9:18am UTC](https://community.spritely.institute/t/using-goblins-in-geiser/589 "2024-10-22T09:18:28Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![mdj](https://avatars.discourse-cdn.com/v4/letter/m/eb8c5e/32.png) [@mdj](https://community.spritely.institute/u/mdj)\
**Post date:** [October 22, 2024, 9:18am UTC](https://community.spritely.institute/t/using-goblins-in-geiser/589/1 "2024-10-22T09:18:28Z")

</div>

Any word of advice regarding running Goblins in guile-geiser?

I installed elpa-geiser in Debian Bookworm and ran Guile git main in it.

I saw the “Live hacking fix” in the manual and typed (use-modules (goblins)) in the REPL and got this:

scheme@(guile-user)\> (use-modules (goblins))  
scheme@(guile-user) [11]\>

Why am I now 11 prompts down?

Also, continuing to do the tutorial I eventually end up with:

(define alice  
(spawn ^greeter “Alice”))

ice-9/boot-9.scm:1683:22: In procedure raise-exception:  
No current syscaller

Entering a new prompt. Type `,bt' for a backtrace or `,q’ to continue.  
Unknown meta command: geiser-no-values  
scheme@(guile-user) [2]\>

Anyone recognizing this and knows what the problem is?

Best regards,  
Mikael Djurfeldt

---

<div class="post-metadata">

**Author:** ![dthompson](https://yyz2.discourse-cdn.com/flex030/user_avatar/community.spritely.institute/dthompson/32/95_2.png) [@dthompson](https://community.spritely.institute/u/dthompson)\
**Post date:** [October 22, 2024, 11:16am UTC](https://community.spritely.institute/t/using-goblins-in-geiser/589/2 "2024-10-22T11:16:40Z")

</div>

Welcome @mdj! While I don’t know the exact reason for the 11 sub-REPLs thing, I’d guess that your Geiser isn’t setup properly given the `Unknown meta command: geiser-no-values` error. Regarding the issue with spawning your `alice` actor, it looks like you are not calling `spawn` in the context of a vat. You can evaluate in the context of a vat in 2 ways:

1. Using `call-with-vat`:

```scheme
(define alice (call-with-vat a-vat (lambda () (spawn ^greeter "Alice"))))

```

1. Enter the vat context at the REPL with the `,enter-vat` meta command:

```scheme
scheme@(guile-user)> ,enter-vat a-vat
goblins/a-vat@(guile-user) [1]> (define alice (spawn ^greeter "Alice"))

```

`,enter-vat` is covered in the tutorial, so if it’s the case that you’ve done these steps already my guess would be that your Geiser problems are messing up your REPL context.

Hope this helps!

---

<div class="post-metadata">

**Author:** ![mdj](https://avatars.discourse-cdn.com/v4/letter/m/eb8c5e/32.png) [@mdj](https://community.spritely.institute/u/mdj)\
**Post date:** [October 22, 2024, 12:13pm UTC](https://community.spritely.institute/t/using-goblins-in-geiser/589/3 "2024-10-22T12:13:45Z")

</div>

Hi David,

Thanks for your reply!

I think I have narrowed it down somewhat. I think the culprit is the interaction between Geiser and the stuff under Guile (system repl).

Note that my environment is pretty clean without much configuration of my own. I run Emacs 29.4 and HEAD of Guile main branch. And I’ve tested with the elpa-geiser package as well as HEAD of geiser main as well as geiser-guile main branches. Same result.

It turns out that I get several prompts down also by just typing ,h in geiser-guile REPL without having loaded Goblins, so it turns out not to be a Goblins thing. Sorry! 🙂

(The reason why I wasn’t still in the vat was that when exciting these spurious prompts, I happened to _also_ exit the vat.)

Best regards,  
Mikael

---

<div class="post-metadata">

**Author:** ![mdj](https://avatars.discourse-cdn.com/v4/letter/m/eb8c5e/32.png) [@mdj](https://community.spritely.institute/u/mdj)\
**Post date:** [October 22, 2024, 4:44pm UTC](https://community.spritely.institute/t/using-goblins-in-geiser/589/4 "2024-10-22T16:44:55Z")

</div>

OK, I could sit down with this now and found the problem: I’m new to Geiser and hadn’t realized that I had to manually copy the geiser-guile _Guile_ sources (geiser-guile/src) to somewhere in my local Guile’s %load-path. (This is somewhat stupid since I once wrote a Geiser-like environment and of course had to have a bunch of Guile sources to support that.)

Problem solved. I can run Goblins under Geiser. 🙂

---

<div class="post-metadata">

**Author:** ![dthompson](https://yyz2.discourse-cdn.com/flex030/user_avatar/community.spritely.institute/dthompson/32/95_2.png) [@dthompson](https://community.spritely.institute/u/dthompson)\
**Post date:** [October 22, 2024, 4:57pm UTC](https://community.spritely.institute/t/using-goblins-in-geiser/589/5 "2024-10-22T16:57:24Z")

</div>

Awesome! Glad you were able to get to a working setup! Happy hacking.
