Michio and the TAPS wg,
While I was checking over DavidB's (excellent) TSVAREA minutes, the
discussion of the relationship between writing to non-volatile memory
and TAPS triggered an old memory. I believe this would effectively add a
requirement for persistence and/or transactional semantics to the API.
In the distributed systems research community, there was work on an API
for persistence and transactional semantics that came up with some nice
ideas in the late 1990s. They used reflection to provide app-specific
information declaratively but still separate from app code. Obviously
the age of the work dates some of the details (e.g. use of CORBA or
Java), and there's no explicit consideration of latency, but it's still
worth trying to understand the rationale for using reflection.
I found these two papers, that are part of the old ANSA project site
that Andrew Herbert kindly rescued from oblivion recently, and uploaded
to more stable storage (irony intended):
Schwiderski, Scarlet, "Design and Implementation of a Persistence
Service for Java," ANSA Technical Report APM.1940.02 (January 1997)
http://www.computerconservationsociety.org/ansa/97/Primary/194002.pdf
Wu, Zhixue, "A Reflective Component-Based Transaction Architecture"
Middleware'98
http://www.computerconservationsociety.org/ansa/ANSAhtml/98-ansa/external/9804tb/9804tran.pdf
And this tech report, which I haven't read, from the Uni of Tromsø:
Anna-Brith A. Jakobsen and Randi Karlsen, "ReflecTS; A Reflective
Transaction Service Framework for Open Applications"
https://munin.uit.no/bitstream/handle/10037/378/report.pdf;sequence=1
via https://munin.uit.no/handle/10037/378
This paper gives a good starting point:
Stroud, R. & Wu, Z., "Using Meta-Object Protocols to Implement Atomic
Data Types," Distributed Syst. Engineering 952(2):168-189 In: Proc.
ECOOP'95 Vol.952 No.2 pp.168-189 (1995)
I can't find it online, but here's a scan of a tech report with the same
title and authors: https://assets.cs.ncl.ac.uk/TRs/512.pdf
For those interested, try searching for some variation of "transaction
OR persistence reflection metaobject middleware"
Bob
--
________________________________________________________________
Bob Briscoe http://bobbriscoe.net/