Re: [friam] Re: Distributed failure models
Tom Van Cutsem <[email protected]> Wed, 8 Jul 2015 21:39:27 +0200
| Newsgroups | gmane.comp.capabilities.general |
|---|---|
| Message-ID | <CAKDfNj8hydp3ZdB3ibTgsFTHtaNGAH3Vy6s5=FBf6Ug-0v6xiA@mail.gmail.com> |
2015-07-06 18:06 GMT+02:00 Karp, Alan H <[email protected]>: > Daira Hopwood wrote: > > > I continue to be convinced that both models are necessary and must be > used simultaneously, > > An excellent summary of the issues. I agree. There are further implementation synergies to supporting Ken-like error > masking in > combination with other forms of error handling. One of the most efficient > ways to > implement the snapshotting/rollback needed for Ken is to use copy-on-write > for state > modifications (at the word, object or page level). This enables cheap > implementations > of several other language features. See my Strange Loop presentation at > < > https://github.com/noether-lang/noether/tree/master/doc/presentations/StrangeLoop2014 > > > for details, particularly slides 16 to 30 inclusive. This all reminded me of two recent, similar abstractions: * Worlds by Alex Warth et al at VPRI, see < http://www.vpri.org/pdf/tr2011001_final_worlds.pdf> * Concurrent Revisions by Sebastian Burckhardt et al at MSR, see < http://research.microsoft.com/en-us/projects/revisions/>, in particular, this example <http://www.rise4fun.com/Revisions/FlakyCode>, which is precisely your "side-effect confinement". Both abstractions also remind me of Software Transactional Memory implemented using snapshot isolation (e.g. as in Clojure's STM). I subscribe to your point of view that a few implementation-level primitives may enable a wide range of useful language abstractions. Cheers, Tom _______________________________________________ cap-talk mailing list [email protected] http://www.eros-os.org/mailman/listinfo/cap-talk