

\cleardoublepage

\chapter{Introduction}

\cgal\ is the {\em Computational Geometry Algorithms Library} that is
developed by the {\sc Esprit} project \cgal.
The library is written in \CC\ and makes heavily use of {\em templates},
which are a means to obtain generic code.

\stl\  is the Standard Template Library. Its main components are {\em
containers}, {\em algorithms}, {\em iterators} and {\em function
objects}.  This library is part of the ISO \CC\ standard 
\cite{cgal:ansi-is14882-98}.
\stl\ is more than a library, it is a framework and a programming paradigm
which was adopted by the \cgal\ project for its library of geometric
algorithms.

This document describes in a simplified way the basic features of \stl.
After reading this document you should be able to use these features
which are used throughout the \cgal\ library.
This document is neither a reference manual nor a tutorial for \stl.
For the sake of simplicity we sometimes sacrifice exactness.
If you compare what is written in this document with what is written
in the reference manual you will see that in reality things are
slightly more general and hence slightly more complicated.

If you want to develop your own iterators or containers, this is 
definitely the wrong document for you.
We recommend to have a look at the header files themselves as the code is 
extremely instructive.
