Français Anglais
Accueil Annuaire Plan du site
Accueil > Evenements > Séminaires
Séminaire d'équipe(s) Toccata ForTesSE
Freedom Before Commitment – A Lightweight Type System for Object Initialization
Peter Muller

14 October 2011, 11h00 - 14 October 2011, 12h00
Salle/Bat : 435/PCRI-N
Contact :

Activités de recherche :

Résumé :
One of the main purposes of object initialization is to establish invariants such as a field being non-null or an immutable data structure containing specific values. These invariants are then implicitly assumed by the rest of the implementation, for instance, to ensure that a field may be safely dereferenced or that immutable data may be accessed concurrently.
Consequently, letting an object escape from its constructor is dangerous; the escaping object might not yet satisfy its invariants, which may lead to errors in code that relies on them. Nevertheless, preventing objects entirely from escaping from their constructors is too restrictive; it is often useful to call auxiliary methods on the object under initialization or to pass it to another constructor to set up mutually-recursive structures.
This talk presents a type system that tracks which objects are fully initialized and which are still under initialization. The type system can be used to prevent objects from escaping, but also to allow safe escaping by making explicit, which objects might not yet satisfy their invariants. We designed, formalized, and implemented our type system as an extension to a non-null type system, but it is not limited to this application. Our system is conceptually simple and requires little annotation overhead; it is sound and sufficiently expressive for many common programming idioms. Therefore, we believe it to be suitable for mainstream use.

Pour en savoir plus : http://www.pm.inf.ethz.ch/people/pmueller
Séminaires
Langage d'icônes et visualisation d'ensembles : mé
Thursday 24 October 2019 - 14h30
Salle : 475 - PCRI-N
Jean-Baptiste Lamy .............................................

Matchings and related structures with Specified Co
Théorie des graphes
Thursday 17 October 2019 - 14h30
Salle : 445 - PCRI-N
Yannis Manoussakis .............................................

Conservation of structural long-range modules in R
Thursday 17 October 2019 - 14h30
Salle : 475 - PCRI-N
Vladimir Reinharz .............................................

Overcoming interference in the beeping communicati
Algorithmique distribuée
Friday 11 October 2019 - 14h30
Salle : 445 - PCRI-N
Fabien Dufoulon .............................................

Local checkability: a notion that started in the c
Algorithmique distribuée
Tuesday 08 October 2019 - 11h00
Salle : 465 - PCRI-N
Prof. Kutten Shay .............................................