Expression templates in Ada 95
From LRDE
- Authors
- Alexandre Duret-Lutz
- Where
- Proceedings of the 6th International Conference on Reliable Software Technologies (Ada-Europe)
- Place
- Leuven, Belgium
- Type
- inproceedings
- Publisher
- Springer-Verlag
- Projects
- Software"Software" is not in the list (Vaucanson, Spot, URBI, Olena, APMC, Tiger, Climb, Speaker ID, Transformers, Bison, ...) of allowed values for the "Related project" property.
- Keywords
- Software engineering
- Date
- 2001-05-01
Abstract
High-order matrix or vector expressions tend to be penalized by the use of huge temporary variables. Expression templates is a C++ technique which can be used to avoid these temporaries, in a way that is transparent to the user. We present an Ada adaptation of this technique which - while not transparent - addresses the same efficiency issue as the original. We make intensive use of the signature idiom to combine packages together, and discuss its importance in generic programming. Finally, we express some concerns about generic programming in Ada.
Bibtex (lrde.bib)
@InProceedings{ duret.01.ae, author = {Alexandre Duret-Lutz}, title = {Expression templates in {A}da~95}, booktitle = {Proceedings of the 6th International Conference on Reliable Software Technologies (Ada-Europe)}, year = 2001, series = {Lecture Notes in Computer Science Series}, volume = 2043, address = {Leuven, Belgium}, month = may, publisher = {Springer-Verlag}, pages = {191--202}, note = {Best Paper Award}, abstract = {High-order matrix or vector expressions tend to be penalized by the use of huge temporary variables. Expression templates is a C++ technique which can be used to avoid these temporaries, in a way that is transparent to the user. We present an Ada adaptation of this technique which - while not transparent - addresses the same efficiency issue as the original. We make intensive use of the signature idiom to combine packages together, and discuss its importance in generic programming. Finally, we express some concerns about generic programming in Ada.} }