18th International Parallel and Distributed Processing Symposium (IPDPS'04) - Workshop 10
Generic Programming and High-Performance Libraries
Santa Fe, New Mexico
April 26-April 30
ISBN: 0-7695-2132-0
Generic programming is an attractive paradigm for developing libraries for high-performance computing because of the simultaneous emphases placed on generality and efficiency. In this approach, interfaces are based on sets of specified requirements on types, rather than on any particular type, allowing algorithms to inter-operate with any data type meeting the necessary requirements. These sets of requirements, known as concepts, can specify syntactic as well as semantic requirements. Although concepts are fundamental to generic programming, they are not supported as first-class entities in mainstream programming languages, thus limiting the degree to which generic programming can be effectively applied. In this paper we advocate better syntactic and semantic support for concepts and describe some straightforward language features that could better support them. We also brie.y discuss uses for concepts beyond their use in constraining polymorphism.
Citation:
Jaakko Järvi, Andrew Lumsdaine, D. P. Gregor, M. Kulkarni, D. R. Musser, S. Schupp, "Generic Programming and High-Performance Libraries," ipdps, vol. 11, pp.198b, 18th International Parallel and Distributed Processing Symposium (IPDPS'04) - Workshop 10, 2004