3 ms·
While magnet URIs come close I think this would actually be a better match for a purely functional data store, like Datomic for example. If you namespaced each
by mtrimpe 14y ago
While magnet URIs come close I think this would actually be a better match for a purely functional data store, like Datomic for example.
If you namespaced each Datomic database and add a transaction ID you would get a reference to an immutable snapshot of that entire data store, including pieces of it, like datomic://myhost:<transaction-id>/path-or-query-into-db
The disadvantage of that is that it is data and not a website, however it's possible to use Functional Reactive Programming to let the site essentially be auto-generated from that data store thus giving you the 'website view' again.
That of course still allows your program to be lost, but if you were to add that program to that purely functional data store itself and thus also version your own program, then that is also no longer a problem.
And once you've done that call me, since you'll have built what I've been dreaming of for the past decade.
- derefr 14y agoHah! I am working on something similar to that. I don't really think of it as a 'website view', though--it's more like a distributed database of versioned hypercard stacks that can contain hyperlinks. It also runs the stacks on a distributed system of mutually-untrustworthy resource-competing agents, built as a multitenancy patch to Erlang's BEAM VM, and each stack-instance is by default accessed "collaboratively", mediated between users transparently using Operational Transformations. I'm calling the platform Alph--after the river that runs through Xanadu ;)