| The generic graph component library |
| Full text |
Pdf
(1.36 MB)
|
| Source
|
Conference on Object Oriented Programming Systems Languages and Applications
archive
Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
table of contents
Denver, Colorado, United States
Pages: 399 - 414
Year of Publication: 1999
ISBN:1-58113-238-7
Also published in ...
|
|
Authors
|
|
Lie-Quan Lee
|
Laboratory for Scientific Computing, Department of Computer Science and Engineering, University of Notre Dame, Notre Dame, IN
|
|
Jeremy G. Siek
|
Laboratory for Scientific Computing, Department of Computer Science and Engineering, University of Notre Dame, Notre Dame, IN
|
|
Andrew Lumsdaine
|
Laboratory for Scientific Computing, Department of Computer Science and Engineering, University of Notre Dame, Notre Dame, IN
|
|
| Sponsor |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 3, Downloads (12 Months): 51, Citation Count: 10
|
|
|
ABSTRACT
In this paper we present the Generic Graph Component Library (GGCL), a generic programming framework for graph data structures and graph algorithms. Following the theme of the Standard Template Library (STL), the graph algorithms in GGCL do not depend on the particular data structures upon which they operate, meaning a single algorithm can operate on arbitrary concrete representations of graphs. To attain this type of flexibility for graph data structures, which are more complicated than the containers in STL, we introduce several concepts to form the generic interface between the algorithms and the data structures, namely, Vertex, Edge, Visitor, and Decorator. We describe the principal abstractions comprising the GGCL, the algorithms and data structures that it provides, and provide examples that demonstrate the use of GGCL to implement some common graph algorithms. Performance results are presented which demonstrate that the use of novel lightweight implementation techniques and static polymorphism in GGCL results in code which is significantly more efficient than similar libraries written using the object-oriented paradigm.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Netlib repository, http://www.netlib.org/.
|
| |
2
|
University of Florida sparse matrix collection. http://www-pub, cise.ufl, edu/,,~ davis/sparse/.
|
| |
3
|
|
| |
4
|
|
| |
5
|
Forster, M., Pick, A., and Raitner, M. Graph Template Library. http://www.fmi.unipassau.de/Graphlet/GTL/.
|
| |
6
|
|
| |
7
|
George, A., and Liu, j. W.H. User's guide for SPARSPAK: Waterloo sparse linear equations packages. Teeh. rep., Department of Computer Science, University of Waterloo, Waterloo, Ontario, Canada, 1980.
|
| |
8
|
|
| |
9
|
Grimes, R. G., Lewis, J. G., and Duff, i. S. User's guide for the harwell-boeing sparse matrix collection. User's Manual Release 1, Boeing Computer Services, Seattle, WA, October 1992.
|
| |
10
|
|
 |
11
|
|
| |
12
|
Lee, M., and Stepanov, A. The standard template library. Tech. rep., HP Laboratories, February 1995.
|
 |
13
|
|
| |
14
|
Mehlhom, K., and Naeher, S. LEDA. http://www.mpisb.mpg.de/LEDA/leda.html.
|
| |
15
|
|
| |
16
|
Object Management Group. UML Notation Guide, version 1. I ed.,September 1997. http://www.rational.com/uml/.
|
| |
17
|
|
| |
18
|
|
| |
19
|
|
| |
20
|
Sick, J. G., and Lumsdaine, A. Mayfly: A pattern for light-weight genetic interfaces. In PLOP99 (1999). Accepted.
|
| |
21
|
|
| |
22
|
|
| |
23
|
|
CITED BY 10
|
|
Johan Larsson, Calculating in an object-oriented iterator-view-generator framework, Addendum to the 2000 proceedings of the conference on Object-oriented programming, systems, languages, and applications (Addendum), p.147-148, January 2000, Minneapolis, Minnesota, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|