Monthly Shaarli

All links of one month in a single page.

March, 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.

The Cursed Computer Iceberg Meme
thumbnail

The meme, but as a HTML page with clickable links to articles.

The Hunt for the Missing Data Type

Why programming languages don't provide graphs in their standard libraries:

  • There are many different kinds of graphs
  • There are many different representations of each kind of graph
  • There are many different graph algorithms
  • Graph algorithm performance is very sensitive to graph representation and implementation details
  • People run very expensive algorithms on very big graphs.