SCL (Sequence Class Library) is a class library written in the C+ + pr
ogramming language. Designed using object-oriented programming princip
les, SCL consists of classes of objects performing tasks typically nee
ded for analyzing DNA or protein sequences. Among them are very flexib
le sequence classes, classes accessing databases in various formats, c
lasses managing collections of sequences, as well as classes performin
g higher-level tasks like calculating a pairwise sequence alignment. S
CL also includes classes that provide general programming support, lik
e a dynamically growing array, sets, matrices, strings, classes perfor
ming file input/output, and utilities for error handling. By providing
these components, SCL fosters an explorative programming style: exper
imenting with algorithms and alternative implementations is encouraged
rather than punished. A description of SCL's overall structure as wel
l as an overview of its classes is given. Important aspects of the wor
k with SCL ave discussed in the context of a sample program.