Coping with aliasing in the GNU Eiffel compiler implementation. This paper reports our experience about aliasing in the implementation of SmallEiffel, the GNU Eiffel Compiler. The SmallEiffel compiler source code makes intensive use of aliasing in order to achieve very good performance. We explain how aliasing can be handled in a safer way, and how helpful the design by contract capabilities of the Eiffel language have been. The Singleton pattern appears to be crucial in implementing alias provider objects. We propose an efficient implementation of this pattern made easy by some Eiffel idioms. This technique, which requires no language modification, is very appropriate for compilation, but can also be applied to a much wider range of applications. We show the performance impact of string aliasing both in terms of memory footprint and execution time.
Keywords for this software
References in zbMATH (referenced in 9 articles , 1 standard article )
Showing results 1 to 9 of 9.
- Ducournau, Roland: Implementing statically typed object-oriented programming languages (2011)
- Nienaltowski, Piotr; Meyer, Bertrand; Ostroff, Jonathan S.: Contracts for concurrency (2009)
- Pottier, François; Gauthier, Nadji: Polymorphic typed defunctionalization and concretization (2006)
- Moreau, Pierre-Etienne; Zendra, Olivier: GC(^2): a generational conservative garbage collector for the ATERM library (2004)
- Zibin, Yoav; Gil, Joseph (Yossi): Incremental algorithms for dispatching in dynamically typed languages (2003)
- Chatzigeorgiou, Alexander; Stephanides, George: Evaluating performance and power of object-oriented vs. procedural programming in embedded processors (2002)
- Kreye, Dietmar: A compilation scheme for a hierarchy of array types (2002)
- Pontelli, E.; Ranjan, D.; Dal Palú, A.: An optimal data structure to handle dynamic environments in non-deterministic computations (2002)
- Zendra, Olivier; Colnet, Dominique: Coping with aliasing in the GNU Eiffel compiler implementation (2001)