Mostrar el registro sencillo del ítem

dc.contributor.author
Melgratti, Hernan Claudio  
dc.contributor.author
Padovani, Luca  
dc.date.available
2018-09-19T19:43:19Z  
dc.date.issued
2017-08  
dc.identifier.citation
Melgratti, Hernan Claudio; Padovani, Luca; Chaperone contracts for higher-order sessions; ACM; Proceedings of the ACM on Programming Languages; 1; ICFP; 8-2017; 1-29  
dc.identifier.issn
2475-1421  
dc.identifier.uri
http://hdl.handle.net/11336/60327  
dc.description.abstract
Contracts have proved to be an effective mechanism that helps developers in identifying those modules of a program that violate the contracts of the functions and objects they use. In recent years, sessions have established as a key mechanism for realizing inter-module communications in concurrent programs. Just like values flow into or out of a function or object, messages are sent on, and received from, a session endpoint. Unlike conventional functions and objects, however, the kind, direction, and properties of messages exchanged in a session may vary over time, as the session progresses. This feature of sessions calls for contracts that evolve along with the session they describe.In this work, we extend to sessions the notion of chaperone contract (roughly, a contract that applies to a mutable object) and investigate the ramifications of contract monitoring in a higher-order language that features sessions. We give a characterization of correct module, one that honors the contracts of the sessions it uses, and prove a blame theorem. Guided by the calculus, we describe a lightweight implementation of monitored sessions as an OCaml module with which programmers can benefit from static session type checking and dynamic contract monitoring using an off-the-shelf version of OCaml.  
dc.format
application/pdf  
dc.language.iso
eng  
dc.publisher
ACM  
dc.rights
info:eu-repo/semantics/openAccess  
dc.rights.uri
https://creativecommons.org/licenses/by/2.5/ar/  
dc.subject
Contracts  
dc.subject
Session Types  
dc.subject.classification
Ciencias de la Computación  
dc.subject.classification
Ciencias de la Computación e Información  
dc.subject.classification
CIENCIAS NATURALES Y EXACTAS  
dc.title
Chaperone contracts for higher-order sessions  
dc.type
info:eu-repo/semantics/article  
dc.type
info:ar-repo/semantics/artículo  
dc.type
info:eu-repo/semantics/publishedVersion  
dc.date.updated
2018-09-17T19:38:04Z  
dc.journal.volume
1  
dc.journal.number
ICFP  
dc.journal.pagination
1-29  
dc.journal.pais
Estados Unidos  
dc.journal.ciudad
Nueva York  
dc.description.fil
Fil: Melgratti, Hernan Claudio. Consejo Nacional de Investigaciones Científicas y Técnicas. Oficina de Coordinación Administrativa Ciudad Universitaria. Instituto de Investigación En Ciencias de la Computación. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales. Instituto de Investigación En Ciencias de la Computacion; Argentina  
dc.description.fil
Fil: Padovani, Luca. Università di Torino; Italia  
dc.journal.title
Proceedings of the ACM on Programming Languages  
dc.relation.alternativeid
info:eu-repo/semantics/altIdentifier/url/http://dl.acm.org/citation.cfm?doid=3136534.3110279  
dc.relation.alternativeid
info:eu-repo/semantics/altIdentifier/doi/http://dx.doi.org/10.1145/3110279