AP Library: Facilitating Reuse of Adaptive Programming Concepts
Fact Sheet
Demeter Research Group, Northeastern University, College of Computer Science, Boston
- What does the product do? The AP Library gives you
an implementation of the core concepts and an algorithm
for Adaptive Programming (AP): you get an interface and implementation
for the concepts of
class graphs, traversal strategy graphs, traversal graphs and
an algorithm to compute traversal graphs from class graphs
and traversal strategy graphs.
The AP Library is easy to learn and use by
Java Programmers.
The AP Library builds on the observation pioneered by the Demeter
project that succinct subgraph specifications
are very useful in a variety of software development contexts.
The product is
the result of 10 years of research and development in Adaptive Programming.
- Why is the product useful? The product gives
you a well working implementation of an utterly useful, non-trivial
algorithm. Possible applications include: specification of scope
in objects (e.g., which object fragment should be persistent, which
object fragment should be transferred, in which object fragment should
a parameter be visible), specification of cross-cutting
in Aspect-Oriented Programming, specification of traversals
in objects, adaptive specification of sets of classes,
how should a "simple" graph be mapped to a more "detailed" graph, etc.
The AP Library is used by DemeterJ
(www.ccs.neu.edu/research/demeter/DemeterJava/) and DJ
(www.ccs.neu.edu/research/demeter/DJ).
- Platforms. The AP Library is implemented in Java (using DemeterJ, the big sister of DJ)
and is available
in 100% pure Java source form.
It runs on all platforms where Java runs.
- How to get it. We distribute
the AP Library as a research prototype.
www.ccs.neu.edu/research/demeter/software/APLibrary.
For general information on Demeter, see:
www.ccs.neu.edu/research/demeter.
Supported by DARPA and Rome Laboratory under agreement
F30602-96-0239 (Evolution of Software Via Adaptive Programming),
Karl Lieberherr (PI) lieberherr@ccs.neu.edu.
Acknowledgements:
Algorithm development: Boaz Patt-Shamir
http://www.ccs.neu.edu/research/demeter/biblio/strategies.html.
Implemented by Doug Orleans.
We develop the AP Library using a Bazaar approach. Please send us your bug fixes and
improvements
to dem@ccs.neu.edu and we will integrate them.
version June 11, 1999