Daily Shaarli

All links of one day in a single page.

March 14, 2024

The Heart of Spritely: Distributed Objects and Capability Security

Tools for building networked communities. Spritely Goblins has an implementation of object-capabilities security system based on actors. Actors have easy local transactionality (allowing time travel) and also location transparency.

Promise-pipelining is not just a convenience for programmers, but also reduces the overall number of roundtrips on the network.

I didn't find the equivalent of a fire-and-forget message in Goblins. Every asynchronous message needs to be handled with a promise.

An object-capability security system can do several operations through simple object-oriented programming, without the need for cryptography. The object reference that is passed is unforgeable by default.

Guile has an OOP system called GOOPS, but Spritely Goblins isn't using that.

Turns are cheap local transactions in Goblins. I didn't see distributed transactions in Goblins.

The Unum pattern seems interesting.