Elena Giachino

dblp:16/1532 · DBLP profile ↗
← Back
19ranked-venue papers
7as first author
1since 2021 · last 2022
0000-0001-8884-044XORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Theory of computation · 14 · 3 first-author · 1 since 2021Software engineering, systems software and programming languages · 10 · 5 first-author · 1 since 2021
YearPublicationVenuePosition
2022 Session Types Revisited: A Decade Later
abstract
International audience
Ornela Dardha, Elena Giachino, Davide Sangiorgi
PPDP2
2019 Foundations of Session Types: 10 Years Later
abstract
International audience
Giuseppe Castagna, Mariangiola Dezani-Ciancaglini, Elena Giachino, Luca Padovani
PPDP3
2017 Session types revisited
abstract
Session types are a formalism used to model structured communication-based programming. A binary session type describes communication by specifying the type and direction of data exchanged between two parties. When session types and session processes are added to the syntax of standard π-calculus they give rise to additional separate syntactic categories. As a consequence, when new type features are added, there is duplication of effort in the theory: the proofs of properties must be checked both on standard types and on session types. We show that session types are encodable into standard π-types, relying on linear and variant types. Besides being an expressivity result, the encoding (i) removes the above redundancies in the syntax, and (ii) the properties of session types are derived as straightforward corollaries, exploiting the corresponding properties of standard π-types. The robustness of the encoding is tested on a few extensions of session types, including subtyping, polymorphism and higher-order communications.
Ornela Dardha, Elena Giachino, Davide Sangiorgi
Inf. Comput.2
2016 Actors may synchronize, safely!
abstract
We study deadlock detection in an actor model with wait-by-necessity synchronizations, a lightweight technique that synchronizes invocations when the corresponding values are strictly needed. This approach relies on the use of futures that are not given an explicit "Future" type. The approach we adopt explicits the synchronization on futures, and on the availability of some values, instead of the synchronization on the termination of a process existing in previous works. This way we are able to analyse the data-flow synchronization inherent to languages that feature wait-by-necessity. We provide a type-system and a solver inferring the type of a program so that deadlocks can be identified statically. As a consequence we can automatically verify the absence of deadlocks in actor programs with wait-by-necessity synchronizations.
Elena Giachino, Ludovic Henrio, Cosimo Laneve, Vincenzo Mastandrea
PPDP1
2016 Global escape in multiparty sessions
abstract
This article proposes a global escape mechanism which can handle unexpected or unwanted conditions changing the default execution of distributed communicational flows, preserving compatibility of the multiparty conversations. Our escape is realized by a collection of asynchronous local exceptions which can be thrown at any stage of the communication and to any subsets of participants in a multiparty session. This flexibility enables to model complex exceptions such as criss-crossing global interactions and error handling for distributed cooperating threads. Guided by multiparty session types, our semantics is proven to provide a termination algorithm for global escapes. Our type system guarantees further safety and liveness properties, such as progress within the session and atomicity of escapes with respect to the subset of involved participants.
Sara Capecchi, Elena Giachino, Nobuko Yoshida
Math. Struct. Comput. Sci.2
2016 A framework for deadlock detection in core ABS
Elena Giachino, Cosimo Laneve, Michael Lienhardt
Softw. Syst. Model.1
2015 Causal-Consistent Reversibility in a Tuple-Based Language
abstract
Causal-consistent reversibility is a natural way of undoing concurrent computations. We study causal-consistent reversibility in the context of μKlaim, a formal coordination language based on distributed tuple spaces. We consider both uncontrolled reversibility, suitable to study the basic properties of the reversibility mechanism, and controlled reversibility based on a rollback operator, more suitable for programming applications. The causality structure of the language, and thus the definition of its reversible semantics, differs from all the reversible languages in the literature because of its generative communication paradigm. In particular, the reversible behavior of μKlaim read primitive, reading a tuple without consuming it, cannot be matched using channel-based communication. We illustrate the reversible extensions of μKlaim on a simple, but realistic, application scenario.
Elena Giachino, Ivan Lanese, Claudio Antares Mezzina, Francesco Tiezzi 0001
PDP1
2014 Deadlock Analysis of Unbounded Process Networks
Elena Giachino, Naoki Kobayashi 0001, Cosimo Laneve
CONCUR1
2014 Causal-Consistent Reversible Debugging
Elena Giachino, Ivan Lanese, Claudio Antares Mezzina
FASE1
2014 Towards the Typing of Resource Deployment
Elena Giachino, Cosimo Laneve
ISoLA (2)1
2013 Deadlock Analysis of Concurrent Objects: Theory and Practice
Elena Giachino, Carlo Augusto Grazia, Cosimo Laneve, Michael Lienhardt, Peter Y. H. Wong
IFM1
2013 A Type System for Components
Ornela Dardha, Elena Giachino, Michael Lienhardt
SEFM2
2013 Deriving session and union types for objects
abstract
Guaranteeing that the parties of a network application respect a given protocol is a crucial issue.Session typesoffer a method for abstracting and validating structured communication sequences (sessions).Object-oriented programmingis an established paradigm for large scale applications.Union types, which behave as the least common supertypes of a set of classes, allow the implementation of unrelated classes with similar interfaces without additional programming. We have previously developed an integration of the features above into a class-based core language for building network applications, and this successfully amalgamated sessions and methods so that data can be exchanged flexibly according to communication protocols (session types). The first aim of the work reported in this paper is to provide a full proof of the type safety property for that core language by renewing syntax, typing and semantics. In this way, static typechecking guarantees that after a session has started, computation cannot get stuck on a communication deadlock. The second aim is to define a constraint-based type system that reconstructs the appropriate session types of session declarations instead of assuming that session types are explicitly given by the programmer. Such an algorithm can save programming work, and automatically presents an abstract view of the communications of the sessions.
Lorenzo Bettini, Sara Capecchi, Mariangiola Dezani-Ciancaglini, Elena Giachino, Betti Venneri
Math. Struct. Comput. Sci.4
2012 Session types revisited
abstract
Session types are a formalism to model structured communication-based programming. A session type describes communication by specifying the type and direction of data exchanged between two parties. When session types and session primitives are added to the syntax of standard π-calculus types and terms, they give rise to additional separate syntactic categories. As a consequence, when new type features are added, there is duplication of efforts in the theory: the proofs of properties must be checked both on ordinary types and on session types. We show that session types are encodable in ordinary π types, relying on linear and variant types. Besides being an expressivity result, the encoding (i) removes the above redundancies in the syntax, and (ii) the properties of session types are derived as straightforward corollaries, exploiting the corresponding properties of ordinary π types. The robustness of the encoding is tested on a few extensions of session types, including subtyping, polymorphism and higher-order communications.
Ornela Dardha, Elena Giachino, Davide Sangiorgi
PPDP2
2010 Global Escape in Multiparty Sessions
abstract
This paper proposes a global escape mechanism which can handle unexpected or unwanted conditions changing the default execution of distributed communicational flows, preserving compatibility of the multiparty conversations. Our escape is realised by a collection of asynchronous local exceptions which can be thrown at any stage of the communication and to any subsets of participants in a multiparty session. This flexibility enables to model complex exceptions such as criss-crossing global interactions and fault tolerance for distributed cooperating threads. Guided by multiparty session types, our semantics automatically provides an efficient termination algorithm for global escapes with low complexity of exception messages.
Sara Capecchi, Elena Giachino, Nobuko Yoshida
FSTTCS2
2009 Foundations of session types
abstract
We present a streamlined theory of session types based on a simple yet general and expressive formalism whose main eatures are semantically characterized and where each design choice is semantically justified. We formally define the semantics of session types and use it to devise the subsessioning relation. We give a coinductive characterization of subsessioning and describe algorithms to decide all the key relations defined in the article. We demonstrate the generality and expressive power of our framework by providing a session-based type system for a pi-calculus variant that does not rely on any specialized construct for session-based communication. The type system is shown to guarantee absence of communication errors and global progress.
Giuseppe Castagna, Mariangiola Dezani-Ciancaglini, Elena Giachino, Luca Padovani
PPDP3
2009 Amalgamating sessions and methods in object-oriented languages with generics
Sara Capecchi, Mario Coppo, Mariangiola Dezani-Ciancaglini, Sophia Drossopoulou, Elena Giachino
Theor. Comput. Sci.5
2008 A type safe state abstraction for coordination in Java -like languages
Ferruccio Damiani, Elena Giachino, Paola Giannini, Sophia Drossopoulou
Acta Informatica2
2008 Alias Types and Effects for "Environment-aware" Computations
Ferruccio Damiani, Elena Giachino, Paola Giannini
Fundam. Informaticae2