Chemical Descriptors Library: Assumptions
Documentation Assumptions

CDL and its documentation are designed to cover two groups of users. We assume that people of these two groups work in one of the following areas: chemistry, biology, bio or chem informatics, or a related area; reason for which a basic knowledge of chemistry is assumed.
The first group includes people that are more interested in applying CDL's tools, through the use of CDL's executables or incorporating certain pieces of code into their project. Also, people that wants to expose CDL's functionality to their database.
This group of people is less concerned by the implementation details of the library, and more concerned about how to quickly use it.
If you are within this group of people we suggest you to read the examples, the executables' synopsis, and the HOWTOs. This will give you information of the functionality provided and the way to use it. The rest of the documentation you can use it as reference.
Just basic UNIX-type shell command line knowledge is required to use the clients executables.

The second group of people includes developers that either wants to contribute to the development of the library (we expect this to be the largest group) or that wants to incorporate pieces of CDL into their project and continue extending it. This group requires knowledge on the following areas:

  1. Medium level knowledge of the C++ programming language, including templates, template specialization, iterators and polymorphism.
  2. Data structures and algorithms.
  3. Generic programming.
  4. Basic graph theory.


  1. C++
    1. Stroustrup's C++ and Josuttis C++ Standard Library books
  2. Generic Programming
    1. Czarnecki's book
  3. Data structures and algorithms
  4. Graph Theory
    1. Chris K. Caldwell's tutorials
    2. Boost graph library

Copyright © Vladimir Sykora 2006