February 4, 2026

Summon goblins, unleash opinions

Goblins: Distributed, Transactional Programming with Racket and Guile

Summon code goblins anywhere—fans cheer, skeptics ask “is something missing”

TLDR: Spritely’s Goblins lets small bits of code talk safely across the internet and even across languages, with tools for debugging and upgrades. The crowd loves the ambition but debates whether it’s just another actor system, asks what really sets it apart, and wants clearer “why” and missing‑protocol answers

The dev world just conjured Goblins, a toolkit that lets tiny “digital goblins” (little pieces of code) live anywhere on the internet and talk to each other safely. It promises easy message‑passing between different languages (Racket and Guile), built‑in safety “locks and keys,” and handy “undo if it breaks” steps for local actions—plus powerful debugging and save‑and‑upgrade tricks. Sounds magical, right? The crowd’s early verdict: intrigued, impressed, and loudly curious.

One camp is swooning—“Spritely develops very interesting, high-level software,” cheered one fan, while another shouted out their browser‑friendly tool Hoot and called the team’s work “crazy interesting.” But the thread’s spice comes from the skeptics. One voice grumbled it “feels like there’s a protocol missing,” basically asking, where’s the common language glue for the whole system? Another turned the chat into a vibe check: is Goblins just actor‑style messaging with a new hat—“like Erlang,” the granddaddy of message‑passing systems—or “apples with bicycles?” That quip became the meme of the day. A final commenter asked how this stacks against Tony Garnock‑Jones’s actor model—translation: which tiny‑worker system wears the crown for safety and simplicity. The mood: neat work, now show the receipts—what’s the why, and how is this truly different

Key Points

  • Goblins is a distributed object programming environment at the core of Spritely.
  • It provides a capability-oriented security model and automatic local transactions for synchronous operations.
  • An asynchronous interface and network layer enable interactions with objects anywhere on the network.
  • Integrated tools include distributed debugging and a secure process persistence/upgrade model.
  • Current implementations support Guile v0.17.0 and Racket v0.16.0, with documentation and source available.

Hottest takes

“Feels like there’s a protocol missing” — Kinrany
“They do crazy interesting work!” — NeutralForest
“apples with bicycles?” — kayo_20211030
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.