[comp.lang.lisp] lack of C++ library documentation

henry@utzoo.uucp (Henry Spencer) (04/22/89)

In article <25399@watmath.waterloo.edu> gjditchfield@watmsg.waterloo.edu (Glen Ditchfield) writes:
> ...The paper mentions Jonathan Shopiro's "counted pointer" classes, which
>provide garbage collection for C++.  Unfortunately the reference given is
>for a then-unwritten paper.  Is there a better reference or a publically
>available implementation?

Probably not.  In general, there is a grievous need for another book, a
companion to "The C++ Programming Language", to document and de-facto
standardize a bunch of basic libraries.  C++'s big win is the ability to
write powerful and useful libraries, but most of the "well known" libraries
are documented in obscure technical reports, manual pages accompanying
particular implementations, or purely as folklore.  The result is that
it's hard to find out about them and reinvention and mutation are rampant.
-- 
Mars in 1980s:  USSR, 2 tries, |     Henry Spencer at U of Toronto Zoology
2 failures; USA, 0 tries.      | uunet!attcan!utzoo!henry henry@zoo.toronto.edu

pardo@june.cs.washington.edu (David Keppel) (04/22/89)

henry@utzoo.uucp (Henry Spencer) writes:
>[...]  In general, there is a grievous need for another book, a
>companion to "The C++ Programming Language", to document and de-facto
>standardize a bunch of basic libraries.  C++'s big win is the ability to
>write powerful and useful libraries, but most of the "well known" libraries
>are documented in obscure technical reports, manual pages accompanying
>particular implementations, or purely as folklore.  The result is that
>it's hard to find out about them and reinvention and mutation are rampant.

The best collected documentation that I have found is in the `info'
file for `libg++', the standard library for GNU's C++ compiler.
The documentation is particularly useful because it is
cross-referenced and is available both online and as printed copy.


From the main index/menu (Copyright (C) 1988 Free Software Foundation, Inc.):

* Copying::         GNU CC General Public License says
                    how you can copy and share GNU C++ library.
* Contributors::    People who have contributed to GNU C++ library.
* Installation::    How to configure, compile and install GNU C++ library
* Trouble::         If you have trouble installing GNU C++ library.
* General::         Aims, objectives, and limitations of the GNU C++ library
* Conventions::     Stylistic conventions
* OK::              Support for representation invariants
* Proto::           Introduction to container class prototypes
* Pix::             Pseudo-indexes
* Representations:: How variable-sized objects are represented
* Headers::         Header files and other support for interfacing C++ to C
* Builtin::         Utility functions operating on builtin types
* File::            File-based classes
* Stream::          istreams and ostreams
* Obstack::         Obstacks and their uses.
* String::          String, SubString, and Regex classes.
* Integer::         Multiple precision Integer class.
* Rational::        Multiple precision Rational class
* Complex::         Complex number class
* Fix::             Fixed point proportion classes
* Bits::            BitSet and BitString classes
* Random::          Random number generators
* Data::            SampleStatistic and related classes for data collection
* Curses::          CursesWindow class
* List::            Lisp-like List prototype
* LinkList::        Singly and doubly linked list class prototypes
* Vector::          Vector prototypes
* Plex::            Plex (adjustable array) prototypes
* Stack::           Stack prototypes
* Queue::           Queue prototypes
* Deque::           Double ended queue prototypes
* PQ::              Heap (priority queue) class prototypes
* Set::             Set class prototypes
* Bag::             Bag class prototypes
* Map::             Map (Associative array) prototypes
* Gperf::           Perfect Hash Function Generator
* Projects::        Things Still Left to do


		;-D on  ( Code + Comments = Program )  Pardo
-- 
		    pardo@cs.washington.edu
    {rutgers,cornell,ucsd,ubc-cs,tektronix}!uw-beaver!june!pardo