What is Aapl?
Aapl is a C++ template library for generic programming. It contains implementations of AVL Tree, Linked List, Vector, Binary Search Table and Sort. Aapl supports different generic programming paradigms by providing variations of standard data structures. For example, a by-value linked list template may be used to store a user supplied type such as an integer. A different list template allows the user to define the data structure that is to be used as the element. A third list template allows a single instance of a data structure to be an element in multiple lists. Wherever possible, Aapl data structures do not depend on heap memory allocation. There are variations of the linked list and AVL tree that allow the programmer to allocate a collection of elements statically and insert/remove them at will. Aapl data structures do not have their data members hidden behind a strict abstraction layer. Aapl makes very little use of the private keyword. Though data abstractions can be a useful pro