dc.creatorBruni, Roberto
dc.creatorMelgratti, Hernan Claudio
dc.creatorMontanari, Ugo
dc.date.accessioned2018-09-13T17:49:17Z
dc.date.accessioned2018-11-06T15:45:44Z
dc.date.available2018-09-13T17:49:17Z
dc.date.available2018-11-06T15:45:44Z
dc.date.created2018-09-13T17:49:17Z
dc.date.issued2015-03
dc.identifierBruni, Roberto; Melgratti, Hernan Claudio; Montanari, Ugo; CJoin: Join with communicating transactions; Cambridge University Press; Mathematical Structures In Computer Science; 25; 3; 3-2015; 566-618
dc.identifier0960-1295
dc.identifierhttp://hdl.handle.net/11336/59541
dc.identifierCONICET Digital
dc.identifierCONICET
dc.identifier.urihttp://repositorioslatinoamericanos.uchile.cl/handle/2250/1900715
dc.description.abstractThis paper proposes a formal approach to the design and programming of long running transactions (LRTs). We exploit techniques from process calculi to define cJoin, which is an extension of the Join calculus with few well-disciplined primitives for LRT. Transactions in cJoin are intended to describe the transactional interaction of several partners, under the assumption that any partner executing a transaction may communicate only with other transactional partners. In such case, the transactions run by any party are bound to achieve the same outcome (i.e., all succeed or all fail). Hence, a distinguishing feature of cJoin, called dynamic joinability, is that ongoing transactions can be merged to complete their tasks and when this happens either all succeed or all abort. Additionally, cJoin is based on compensations i.e., partial executions of transactions are recovered by executing user-defined programs instead of providing automatic rollback. The expressiveness and generality of cJoin is demonstrated by many examples addressing common programming patterns. The mathematical foundation is accompanied by a prototype language implementation, which is an extension of the JoCaml compiler.
dc.languageeng
dc.publisherCambridge University Press
dc.relationinfo:eu-repo/semantics/altIdentifier/url/https://www.cambridge.org/core/journals/mathematical-structures-in-computer-science/article/cjoin-join-with-communicating-transactions/EC7A5B7885492FCE251BFBBB8AC9B14C
dc.relationinfo:eu-repo/semantics/altIdentifier/doi/http://dx.doi.org/10.1017/S0960129512000928
dc.rightshttps://creativecommons.org/licenses/by-nc-sa/2.5/ar/
dc.rightsinfo:eu-repo/semantics/restrictedAccess
dc.subjectProcess Calculi
dc.subjectTransactions
dc.subjectJoin
dc.titleCJoin: Join with communicating transactions
dc.typeArtículos de revistas
dc.typeArtículos de revistas
dc.typeArtículos de revistas


Este ítem pertenece a la siguiente institución