Designing efficient and safe non-strong references in Eiffel with parametric types

Frederic Merizen 1 Olivier Zendra 1 Dominique Colnet 1
1 DESIGN - DESIGN
LORIA - Laboratoire Lorrain de Recherche en Informatique et ses Applications
Abstract : In this partial report, we present the current state of our work in 2004 within the SmartEiffel project on the design and implementation of several kinds of object references. We introduce the known concept of weak references, reminding how this peculiar kind of references can be used to optimize and fine-tune the memory behavior of programs, thus potentially speeding up their execution. We show that genericity (parametric types in Eiffel) is the key to implementing weak references in a statically-checked hence safer and more efficient way. We compare our solution for weak references to similar notions in other languages and stress the advantages it offers. We present practical examples to support our claim that weak references can be both safe and efficient, and can help optimize programs memory-wise. We further extend our work to other kinds of references --- soft references, tunable strength references and programmable references --- that provide extra degrees of flexibility and correspond to actual practical needs.
Type de document :
Rapport
[Intern report] A04-R-149 || merizen04a, 2004, pp.30
Liste complète des métadonnées

Littérature citée [8 références]  Voir  Masquer  Télécharger

https://hal.inria.fr/inria-00107810
Contributeur : Publications Loria <>
Soumis le : jeudi 19 octobre 2006 - 09:10:30
Dernière modification le : jeudi 11 janvier 2018 - 06:20:36
Document(s) archivé(s) le : vendredi 25 novembre 2016 - 12:39:45

Identifiants

  • HAL Id : inria-00107810, version 1

Collections

Citation

Frederic Merizen, Olivier Zendra, Dominique Colnet. Designing efficient and safe non-strong references in Eiffel with parametric types. [Intern report] A04-R-149 || merizen04a, 2004, pp.30. 〈inria-00107810〉

Partager

Métriques

Consultations de la notice

142

Téléchargements de fichiers

38