1. 19

  2. 5

    The author, Christopher Lemmer Webber, left a comment on orange site explaining what this is:

    Oh hey neat, some coverage. Actually I’m right on the verge of the next big release (v0.8) which should make doing the networked programming significantly easier.

    But here’s some more background: I’m co-author/co-editor of the ActivityPub specification, which might give you some idea that I have some experience with trying to build networked systems. Goblins is part of the Spritely project, or even more accurately, the foundation for it: https://spritelyproject.org/

    Spritely has some pretty wild ambitions… I won’t go into them in detail, the video near the top of the above site explains better. But achieving those in a feasible timeframe means we need some better tooling. Goblins is the foundation of that; it’s implemented as a Racket library, but can/will be ported elsewhere. The docs linked above explain some of the core ideas, but honestly I think the video linked from this section of the site explains it better: https://spritelyproject.org/#goblins

    In general, people tend to realize that something interesting is happening when they see a cool shiny demo. So here are two pages that might give you an idea with some cool shiny demos:

    What? How can the last one be only 250 lines of code? (And a mere 300 more for the GUI!) Well, that’s because we’re implementing a peer-to-peer distributed object programming protocol called CapTP (which includes wild things like distributed garbage collection over the network (for acyclic references), “promise pipelining”, and is object capability secure). The next release will be advancing that work significantly. The Agoric organization is also implementing CapTP, but their stuff is in Javascript instead of Racket; we plan to have our CapTPs to converge. Thus it shouldn’t really matter whether you write your code in Javascript or Racket, your code should be able to talk to each other.

    Anyway, new release coming out soon. Hope that answers some things since the docs page might not convey what’s fully interesting about it (and indeed, neither does this text, but the videos mentioned above do a better job).

    I think it might be better to change the link to https://spritelyproject.org/#goblins since that has a better explanation and links to this documentation as well.