STLport.org - "Templates that fit"
Contents
Introduction
  About STLport
  SGI STL Base
  STLport Story

STLport Features
  Portability
  Debug Mode
  Thread Safety
  Exception Safety

Getting Started
  Download and Install
  Select Streams Mode
  Compiling with STLport

White Papers
  Release Notes
  READMEs
  Interface with std::
  Wrappers
  Config manual
  Regression Test
  Exception Test

Feedback
  Bug Reports
  Forum

Appendix
  Acknowledgements
  Your Free Licence

STLport Story

by Boris Fomitchev

First Step

I started STLport project in Jan'97, shortly after first release of SGI STL. Back then, I was working for Moscow Center for SPARC Technology. I made a quick-and-dirty port of SGI STL for gcc-2.7.2 and SUN CC 4.2 for internal use. Very proud of myself, I submitted my changes back to SGI team. Matt Austern (still leading library developer) was kind enough to respond to me. However, I realized SGI team were not interested at all in extra portability. So I built my own Web page and started distributing my humble port from there. I named it "Adapted SGI STL" (weird, huh ?). Reasonable name appeared only a few months later.

"With a little help..."

Once the initial port availability was announced, I started to receive strong feedback from users. Many people happened to be interested and willing to contribute to this development. With their help, it only took me a few months to port it to most popular compilers. At the same time, I started to realize infinite potential for improvements in this library.

Going Ahead

The first time STLport went ahead of SGI STL was introduction of exception handling support. Dave Abrahams implemented exception-safe standard containers and algorithms on the base of SGI STL to present to ANSI C++ Commitee. At the time, no EH guarantees/requirements were present in the draft standard. Dave proposed to merge his changes into STLport, for maintenance reasons, which I happily did. In the meantime, SGI somewhat independently implemented the exception-safety guarantees in the proposal Dave brought before the committee with Greg Colvin. The STLport exception-handling testsuite was instrumental in getting these implementations right. Dave and Greg managed to get the proposal approved by the standards commitee, due in part to the existence of two working implementations.

Making the Difference

Debug Mode was implemented after "Safe STL" (debug version of HP STL, by Cay Horstmann) in 1997. It is still the feature which makes STLport different from all other standard libraries. No matter how simple the idea of this mode might look, it took severaseveral complete redesigns to get it to its current level. I am very pleased to be able to present this unique feature.

Letting Go

I have to confess that there was a time when I was serious about selling STLport as a commercial library. It took me two years to get a slight idea of how the industry works. So I decided to stick with open source.

Growing Up

Using open source component does not necessarily mean relying on self-maintenance and volunteers good will. In 1999, STLport Consulting, Inc. was founded. We offer STLport support contracts as well as custom development and other consulting services. You may reach us at consulting@stlport.com.

Copyright © 1999,2000 by Boris Fomitchev.    Last modified: July 14, 2000