Generic Programming at the OSL

  |   Home   |   Documentation   |  

There are several projects currently underway in our lab that involve generic programming in some way. The Matrix Template Library is the first one to be released but as the other projects make progress, they will be previewed here.

Iterative Template Library

The Iterative Template Library is a collection of sophisticated iterative methods written in C++ (similar to the IML++ Library). It contains methods for solving both symmetric and nonsymmetric linear systems of equations. The ITL uses the Matrix Template Library interface for its basic linear algebra operations. Since both the ITL and MTL interfaces are templated, the algorithms can be used with any matrix and vector data structures that fullfill the necessary requirements. This means that the ITL algorithms can work with dense, sparse, and even distributed matrices.

Boost Graph Library

The Boost Graph Library, or BGL, is a general purpose, generic C++ library for graph data structures and graph algorithms.

GGCL is developed under the same generic programming paradigm as that in Boost Graph Library, BGL algorithms and components are expressed on the concepts of Graph, Vertex, Edge, Decorator, and Visitor.