Archive-name: C++-faq/libraries/part3
Comp-lang-c++-archive-name: C++-faq/libraries/part3

Available C++ libraries FAQ (3/6)
=================================

Contents
~~~~~~~~
   Introduction                                             (part1)
   Adding or amending entries                               (part1)
   Changes since the last update                            (part1)
   Libraries available via FTP (A-L)                        (part2)
   Libraries available via FTP (M-Z)                        (this file)
   Tools for C++ Programmers                                (part4)
   Libraries with no known FTP site                         (part4)
   Source code from books                                   (part4)
   Other places to look for details of C++ libraries        (part4)
   Useful ftp sites                                         (part4)
   Commercial libraries (A-N)                               (part5)
   Commercial libraries (O-Z)                               (part6)
   Other commercial sources of C++ code                     (part6)

------------------------------------------------------------------------
Libraries available via FTP (M-Z)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
MatClass - a C++ class for numerical computation

Very complete.

  - Offers a general purpose dense, real matrix class
  - Has a family of decomposition classes based on LU, Cholesky,
    Householder QR and SVD
  - Has a family of OLS regression classes based on above decompositons
  - A family of special function classes
  - Random number class
  - Has a simplified I/O structure

Documents   : Very thorough tex manual, with discussion of design
philosophy. Currently the manual does not cover all the features of the
I/O.

Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
Author:Chris Birchenhall
FTP from ftp://pub/matclass/unix/pub/matclass/unix
FTP from ftp://ftp.mcc.ac.uk/pub/matclass/pc
Email:chris.birchenhall@mailhost.mcc.ac.uk
------------------------------------------------------------------------
MATCOM - Matlab to C++ translator and matrix library

The translator creates C++ code from Matlab code which is compiled by the
project manager into an executable.

The C++ MATCOM LIBRARY supports high level, Matlab-like syntax, so
functions can be conveniently hand-coded.

Matlab algorithms may be included in C++ projects using auto
translation.
C/C++ code may be included in .m files.

Enhancements in the latest release include:
  - BLAS library instructions (e_* problems)
  - changes to better support feval - read docs
  - global variables
  - multi-variable save and load
  - image and sound commands
  - fscanf fixed
  - fprintf improved
  - feval working
  - minor bug fixes
  - Octave extensions
  - streamable library
  - library reference and examples


Operating Systems:
  - PC DOS
  - PC Windows
  - PC 32-bit Windows
  - Linux
  - SunOS
  - Solaris
  - SGI Irix
  - Dec OSF/1
  - Dec Alpha
  - HP UX
  - IBM AIX
Compilers:
  - Gnu CC
  - Visual C++
  - Watcom C++
  - Borland C++
  - SGI CC
  - Dec CC
Added : 05/02/96   Amended : 30/07/96 
Licencing : Commercial
Fax:1-888-6284866
Fax:1-888-MATHTOOLS
FTP from ftp://rio.esm.vt.edu/mirror/matcom
FTP from ftp://ftp.funet.fi/pub/sci/math/matlab
FTP from ftp://ftp.eeng.dcu.ie/pub/matlab/MATCOM
FTP from ftp://ftp.simtel.net/pub/simtelnet/msdos/math/matcom15.zip
WWW http://www.mathtools.com
Email:info@mathtools.com
Postal address:MathTools LTD, P.O.Box 855, Horsham, Pennsylvania, USA 19044-0855
------------------------------------------------------------------------
Matrix - A C++ Matrix class

 A C++ Matrix class, including a matrix implementation of the backward
error propagation (backprop) algorithm for training multi-layer, feed-
forward artificial neural networks. A C++ interface to existing C and
FORTRAN matrix libraries. LaTeX manual.

Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
Author:E. Robert (Bob) Tisdale
FTP from ftp://ftp.cs.ucla.edu/pub/Matrix.tar.Z
Email:edwin@cs.ucla.edu
------------------------------------------------------------------------
Matthew's Galib - A C++ Genetic Algorithm Library

GAlib is a C++ library that contains a set of genetic algorithm objects.
With GAlib you can add genetic algorithm optimization techniques to your
program using any data representation and many different genetic algorithm
operators. The library includes genomes based upon binary string, array,
tree, and list data structures, and you can create your own genomes by
simply deriving a new class from the base genome and any data structure
that you may be using already. Many scaling, selection, termination,
initialization, mutation, and crossover methods are included in the
library, and you can override any of the defaults with operators.of your
own design.

Operating Systems:
  - SGI Irix
  - IBM AIX
  - Dec MIPS Ultrix
  - Solaris
  - HP UX
  - MacOS
  - PC
Compilers:
  - Cfront
  - DCC
  - Gnu CC
  - MetroWerks CodeWarrior
  - Symantec THINK C++
  - Borland Turbo C++
Added : 01/01/95   Amended : 01/01/95 
Licencing : Non commercial
FTP from ftp://lancet.mit.edu/pub/ga/
WWW http://lancet.mit.edu/ga/
------------------------------------------------------------------------
MetaKit - A shareware C++ class library for persistent structured data

Store and retrieve structured data. Features: on-demand loading,
failsafe
commit/rollback, serialize for stream I/O, simple API in a few C++
classes.

Comes with hypertext intro, source code examples including disk catalog
and Winsock client/server, and Winhelp API reference guide. No
royalties.
Link as DLL or LIB, Win32/Win16/Dos libs included. Currently only for
MFC.

Registered users can obtain all library versions, including debug
versions,
and will be notified of new revisions and updates. Full email/fax
support.

MetaKit is freely distributable as shareware. It must be registered
after
the 30-day trial period: US$ 25 for personal/non-profit use. For all
other
purposes the source code version must be purchased (additional US$ 65).

Operating Systems:
  - PC DOS
  - PC Windows
Compilers:
  - Visual C++
  - Symantec C++
  - Watcom C++
Added : 22/03/96   Amended : 22/05/96 
Licencing : Shareware
Author:Jean-Claude Wippler
Fax:+31-30-635-2337
WWW http://purl.net/meta4/metakit.zip
WWW http://purl.net/meta4/metakit - MetaKit home page
Email:jcw@meta4.nl
------------------------------------------------------------------------
molbio++ - A C++ library for molecular biosequence analysis

Major features include:
  - classes and services for reading and writing sequence data in the
    following formats:
  - Genbank Flatfile
  - EMBL / SwissProt
  - GCG / Wisconsin
  - Fasta / Pearson
  - PIR
  - NCBI Retrieve Server (read-only)

  - limited parsing of fields and features in biosequence files
  - storing amino acid or nucleic acid sequences
  - iterating over a biosequence
  - calculating and storing counts or frequencies of amino acids or
nucleotides
  - device-independent graphics, via GCG's FIGURE program
  - translating nucleotide sequences into proteins using the universal
genetic code or modifications thereof.
  - parsing BLAST output
  - calculating pI and molecular weight of proteins
  - amino acid hydropathy values of Kyte & Doolittle


Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
Author:Keith Robison
FTP from ftp://golgi.harvard.edu/pub/CONTRIBUTIONS/molbio++
FTP from ftp://ftp.ebi.ac.edu/ - Alternative site found by Herve Recipon
------------------------------------------------------------------------
Motif++  - A wrapper-library, that encapsulates Motif widgets in C++ classes

All resources of these Widgets can now be set through member-functions,
while objects can be used in callback-functions.

 The July 93 release offers:
  - Easy configuration (even for non-imake-gurus)
  - Full support for X11R4 as well as X11R5
  - Full support for Motif 1.1 and Motif 1.2 (including Drag and Drop)
  - Support for Xbae widgetset
  - Support for the xpm library
  - Percentage widgets
  - Generic Widget
  - Support for WCL Table Widget
  - A library for easy manipulation of Visuals
  - A library that reads PBMPLUS files, as well as providing an extension
    to 3D of the format.
  - Lots of demos and testfiles (even somewhat useful programs)
  - An article I wrote on the usage of Motif, X and C++, previously posted
    on Usenet.
  - All filenames smaller than 14 characters


Operating Systems:
  - X Windows
  - Motif
Compilers:
  - Cfront
Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
Author:Ronald van Loon
FTP from ftp://src.doc.ic.ac.uk/packages/motif++/motif++.28.jul.93.tar.gz
FTP from ftp://ftp.wg.omron.co.jp/pub/X11/misc/MOTIF.AND.WIDGETS/Motif++.tar.Z
FTP from ftp://nrcnet0.nrc.ca/pub/motif++/motif++.28.jul.93.tar.gz
FTP from ftp://decuac.dec.com//pub/X11/motif++.28.jul.93.tar.gz
Email:motif++-request@motif.hacktic.nl
Email:motif++@motif.hacktic.nl
Email:rvloon@motif.hacktic.nl
Tel:+31 33 758 293 (if desparate !)
------------------------------------------------------------------------
MTL110JE.ZIP  - Multithreading class library

DOS PC/Borland C++ specific.

Operating Systems:
  - PC DOS
Compilers:
  - Borland C++
Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
FTP from ftp://oak.oakland.edu/pub/msdos/cplusplus/
FTP from ftp://garbo.uwasa.fi/pc/c-lang/
------------------------------------------------------------------------
Newmat - A very thorough matrix class

This library supports classes Matrix, UpperTriangularMatrix,
LowerTriangularMatrix, DiagonalMatrix, SymmetricMatrix, BandMatrix,
UpperBandMatrix, LowerBandMatrix, SymmetricBandMatrix, RowVector,
ColumnVector. Only one element type is supported. It includes the
operations *, +, -, concatenation, elementwise product, inverse,
transpose, conversion between types, submatrix, determinant, Cholesky
decomposition, QR triangularisation, singular value decomposition,
symmetric eigenvalue analysis, fast Fourier transform, sort, print, an
interface to "Numerical Recipes in C" programs, and an emulation of
exceptions.

Compilers:
  - Borland C++
  - Watcom C++
  - Visual C++
  - Gnu CC
  - Cfront
Added : 01/01/95   Amended : 30/07/96 
Licencing : Copyrighted freeware
Author:Robert Davies
FTP from ftp://oak.oakland.edu/SimTel/msdos/cpluspls/newmat08.zip
FTP from ftp://nz.com/robert/newmat08.tar.gz
FTP from ftp://nz.com/robert/newmat08.zip
WWW http://nz.com/webnz/robert/
Email:robert.davies@vuw.ac.nz
------------------------------------------------------------------------
NIHCL - (National Institute of Health's C++ Library)

NIHCL is essentially a mapping of part of Smalltalk's library into C++. 
It lies somewhere between OATH and COOL. It is a little better supported
and there is a textbook by the author, Keith Gorlen, that is fairly good
documentation. However, the Smalltalk hierarchy is not completely
consistent (IMO) with the C++ strong typing nature. It is weakly
supported.

Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
FTP from ftp://alw.nih.gov/pub/nihcl.tar.Z
------------------------------------------------------------------------
nlmdl - A library for estimation of nonlinear models

 Nonlinear maximisation, estimation, includes a real matrix class

Operating Systems:
  - Unix
  - PC DOS
Compilers:
  - Borland Turbo C++
Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
Author:A. Ronald Gallant
FTP from ftp://ccvr1.cc.ncsu.edu/pub/arg/nlmdl
FTP from ftp://ftp.uu.net/usenet/comp.sources.misc/volume16/nlmdl
Email:arg@ccvr1.cc.ncsu.edu
------------------------------------------------------------------------
OATH - Object oriented Abstract Type Hierarchy

OATH was designed as an experiment in increasing object-oriented reuse. It
has a fairly high learning curve, but potentially higher gains if you are
looking for a more flexible and robust abstraction.  It is completely
unsupported.

Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
FTP from ftp://csc.ti.com/pub/oath.tar.Z
------------------------------------------------------------------------
Objtran and Objdce

Objtran is a set of C++ class libraries that provide a higher-level
abstraction for programmers developing applications using OSF's DCE and
Transarc's Encina. Objtran actually consists of two separate libraries --
Objdce and Objtran.

Objdce makes it easier to write DCE applications by abstracting some of
the more complex aspects of DCE. A class is included that can manage an
RPC server, interacting with the DCE Name Service and Security Service as
desired. Another class manages a client's binding to a server and
encapsulates Name Service lookups.  Other classes allow the programmer to
use threads and various forms of mutual-exclusion locks, report errors
consistently, utilize Access Control Lists, handle timestamps from the DCE
Time Service, and perform UUID manipulation.

Objtran is built on top of Objdce, and adds support for the Encina
distributed transaction service. It is intended to be used with C++
programs instead of the "Transactional C" macro package. It fully
encapsulates the Encina TRAN and TRPC facilities with a few easy-to-use
classes. It also provides an efficient recovery service for proper control
of distributed transactions, and has support for the TM/XA service,
allowing interoperability with XA-compliant databases. Support for the
Encina Monitor is being implemented so programs may, with very few code
changes, use either the smaller and more efficient bare Objtran
environment or the more sophisticated Monitor.

This software is Copyright 1993-1994 by Citibank, N.A. Permission is
granted to use, copy, modify and distribute the software and its
documentation without fee. The software is distributed with no warranty of
any kind.

Added : 01/01/95   Amended : 01/01/95 
Licencing : Copyrighted freeware
FTP from ftp://wilma.cs.brown.edu/pub/Objtran.tar.Z
Email:objtran-comment@fig.citib.com
------------------------------------------------------------------------
OBST  - Persistent object management system

The persistent object management system OBST was developed by
Forschungszentrum Informatik (FZI) as a contribution to the STONE
project.

Sites interested in getting information about new OBST developments are
welcome to register in their mailing list by sending a mail with subject
"obst-mailing-list" to stone@fzi.de.

Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
Fax:++49-721-9654-609
FTP from ftp://gate.fzi.de/pub/OBST/
Email:stone@fzi.de
Postal address:Forschungszentrum Informatik FZI, STONE Projekt, Haid-und-Neu-Strasse 10-14, D-7500 Karlsruhe 1, Germany
Tel:++49-721-9654-601
------------------------------------------------------------------------
Octave - Matlab like interactive system for numerical computations

Includes C++ classes for matrix manipulation, numerical integration, and
the solution of systems of nonlinear equations, ODEs and DAEs. Distributed
under the GPL.

Operating Systems:
  - Sparc
  - Dec Ultrix
  - Linux
  - Unix
  - IBM AIX
Compilers:
  - Gnu CC
Added : 01/01/95   Amended : 01/01/95 
Licencing : GNU copyleft
Author:John W. Eaton
FTP from ftp://ftp.che.utexas.edu/pub/octave/octave-M.N.tar.Z
Email:jwe@che.utexas.edu
------------------------------------------------------------------------
Ode - Object database v2.0

Ode is an object-oriented database based on the C++ database model. The
primary interface to Ode is the database programming language O++ which is
based on C++.

Ode is now available to Universities. The current version of Ode runs on
Sun (Sparc) workstations and users must have C++ release 2.0 or a later
release.

Operating Systems:
  - Sparc
Compilers:
  - Sun CC
Added : 01/01/95   Amended : 01/01/95 
Licencing : Education
FTP from ftp://research.att.com./dist/ode2.0/2.0.oppbin.tar.Z
Email:nhg@research.att.com
Postal address:Narain Gehani, AT&T Bell Labs 3D-414, 600 Mountain Ave, Murray Hill, NJ 07974
------------------------------------------------------------------------
ooMPEG - Berkeley MPEG decoder

A reentrant, multi-threaded version of the Berkeley MPEG decoder

Operating Systems:
  - Sun
  - Sparc
  - Solaris
  - HP UX
  - SGI Irix
  - SunOS
Added : 05/02/96   Amended : 05/02/96 
Licencing : Non commercial
FTP from ftp://ftp.cs.brown.edu/pub/ooMPEG.tar.Z
WWW http://www.cs.brown.edu/software/ooMPEG/
Email:lsh@cs.brown.edu
------------------------------------------------------------------------
OSE - C++ Library and Build Environment

OSE is a development environment for C/C++ programmers. The major
components of OSE are a generic C++ class library, documentation tools and
build environment. The C++ class library includes support for error
handling, error message logging, error recovery, program debugging, memory
management, resource management, object containment, strings and symbols,
pattern matching, operating system interfacing, simulation and event
driven systems. OSE can be used with all major C++ compilers and UNIX
platforms as well as Windows NT and Windows 95. OSE has been integrated
for use with the ObjectStore OODBMS from Object Design.

OSE was a winner at CODA '94, the ComputerWorld Object Developer Awards,
held in conjunc! tion with ObjectWorld in Sydney, Australia. The category
in which OSE was successful was "Best implementation of a reuseable
development environment for company deployment". 

Operating Systems:
  - PC 32-bit Windows
  - Unix
Compilers:
  - Cfront
  - Dec CC
  - Gnu CC
  - HP C++
  - IBM xlC
  - SGI CC
  - SGI NCC
  - Sparcworks
  - Sun CC
  - Visual C++
  - KAI CenterLine Novell Lucid ObjectStore
Added : 22/05/96   Amended : 22/05/96 
Licencing : Copyright (other)
Author: Graham Dumpleton
FTP from ftp://ftp.dscpl.com.au/pub/ose
WWW http://www.dscpl.com.au
Email:info@dscpl.com.au
------------------------------------------------------------------------
P++ - Parallel Programming Classes for C++



Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
Author:Dan Quinlan
FTP from ftp://ftp.c3.lanl.gov/pub/dquinlan/
WWW http://www.c3.lanl.gov/~dquinlan/A++P++.html
WWW http://www.c3.lanl.gov/~dquinlan/home.html
Email:dquinlan@lanl.gov
Email:dquinlan@c3serve.c3.lanl.gov
------------------------------------------------------------------------
ParLib++ - Parallel Programming Classes for C++:



Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
Author:David Greco
Email:David.Greco@crs4.it
------------------------------------------------------------------------
PARODY - C++ DATABASE LIBRARY

Al Stevens has written a book on the subject called `Database programming
in C++' or something. An article on the subject was printed in Doctor
Dobbs Journal some time ago.

The nice thing is that Stevens also wrote a C++ library adding persistence
to C++, and the source is available. The library is called PARODY and
compiles under most DOS-based C++ compilers. A slight rewrite of the GUI-
routines has to be done to make it compile under GNU C.

Operating Systems:
  - PC DOS
  - Unix
Compilers:
  - Gnu CC
  - Borland C++
  - Visual C++
Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
FTP from ftp://ftp.mv.com/pub/ddj/1992.12/parody.zip
------------------------------------------------------------------------
pC++ - A preprocessor for C++ that implements a data parallel extension



Operating Systems:
  - CM5
  - Paragon
  - KSR-1
  - Sequent
  - BBNTC2000
  - Unix
Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
Email:gannon@cs.indiana.edu
------------------------------------------------------------------------
PDBlib - Library for modeling a macromolecular structure

PDBlib is a class library written in C++ for modeling a macromolecular
structure at the level of detail (excluding symmetry information) found in
a Protein Data Back (PDB) file. A class is supplied to read a PDB file
into a PDBlib representation. This class is independent of the actual
representation and other forms of input, for example from a relational
database like SESAM, are possible.

The library is made extensible by a close coupling between intrinsic and
external classes. By writing only to the external classes you will remain
compliant with future versions of the library.

You don't get source code. This is a temporary situation while we attempt
to centralize bug fixes and additions to the library. If you find this
situation unworkable source code is available by signing a copyright
agreement which is available with the distribution.

The following files are available :
  - PDBLib.1.0.SGI.tar.Z    Compressed tar file of PDB object classes
    library and header files for SGI.  AT&T C++ release 2.1 & 3.0
    compatible.
  - PDBLib.1.0.Sun.tar.Z    Compressed tar file of PDB object classes
    library and header files for Sun Sparc station.  AT&T C++ release 2.1 &
    3.0 compatible.
  - PDBLib.1.0.Cvx.tar.Z    Compressed tar file of PDB object classes
    library and header files for Convex.  AT&T C++ release 2.1 compatible.
  - PDBLib.1.0.Alpha.tar.Z  Compressed tar file of PDB object classes
    library and header files for Dec 3000 (Alpha AXP) with OSF1. Dec C++ (cxx)
    release 1.2 compatible.


Operating Systems:
  - SGI Irix
  - Sparc
  - Convex
  - Dec Alpha
Compilers:
  - Cfront
  - Dec CC
Added : 01/01/95   Amended : 01/01/95 
Licencing : Copyright (other)
Author:Phil Bourne (general comments, criticisms, questions about future directions)
Author:Ilya Shindyalov (PDBview)
Author:Weider Chang (PDBlib)
FTP from ftp://cuhhca.hhmi.columbia.edu/pub/programs/PDB/PDBlib/
Email:system@cuhhca.hhmi.columbia.edu
Email:shindyal@cuhhca.hhmi.columbia.edu
Email:weider@cuhhca.hhmi.columbia.edu
------------------------------------------------------------------------
Presto - C++ routines for lightweight threads on multiprocessors.

C++ routines for fine-grained parallel programming (lightweight threads)
on multiprocessors. Tuned for the Sequent machines, but highly adaptable
and customizable.

Systems : Unix-like OS on (moderate) multiprocessor machines

Operating Systems:
  - Unix
Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
Author:Brian N. Bershad, Edward D. Lazowska, Henry M. Levy
FTP from ftp://cs.washington.edu/pub/presto1.0.tar.Z
------------------------------------------------------------------------
Radix-2 - Fast Fourier Transform

Radix-2 DFT of a real or complex sequence, or sin/cos/complex Fourier
integral of an evenly tabulated function.

The input can be either real or complex with/without zero padding, the
full complex transform or only real/im/abs_value part of it can be
obtained.

Test drivers and test run outputs are included, too. Commented.

Needs LinAlg.shar, v3.2

Operating Systems:
  - Unix
  - Mac
Compilers:
  - Gnu CC
  - MetroWerks CodeWarrior
Added : 01/01/95   Amended : 22/05/96 
Licencing : Not known
Author:Oleg Kiselyov
Author:Oleg Kiselyov
FTP from ftp://replicant.csci.unt.edu/pub/oleg/fft.tar.gz
FTP from ftp://netlib.att.com/netlib/c++/fft.shar.Z
WWW http:cpplibs2.html#LinAlg.shar
Email:netlib@research.att.com
Email:oleg@unt.edu
Email:oleg@ponder.csci.unt.edu
Email:oleg@ponder.csci.unt.edu
------------------------------------------------------------------------
Range - C++ class for range arithmetic.

Associated with article in TOMS, Dec 1992 title "Precise computation using
range arithmetic, via C++".

Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
Author:Oliver Aberth and Mark J. Schaefer
FTP from ftp://math.tamu.edu/pub/range/range.tar.Z
------------------------------------------------------------------------
RTTI implementation



Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
Author:Arindam Banerji
FTP from ftp://invaders.dcrl.nd.edu/pub/software/rtti.tar.Z
Email:axb@cse.nd.edu
Postal address:384 FitzPatrick Hall, Dept. of Computer Science & Engg., University of Notre Dame, Notre Dame, IN 46556
Tel:(219)-631-5772
Tel:(219)-631-5273
------------------------------------------------------------------------
RTTI library

Till RTTI becomes a part of regular compilers these RTTI libraries provide
an excellent tool for the same purpose.

The library is claimed to be portable. No licence restrictions.

Added : 01/01/95   Amended : 01/01/95 
Licencing : Public Domain
Author:Arindam Banerji
Fax:(219)-631-9260
FTP from ftp://invaders.dcrl.nd.edu/pub/software/rtti.tar.Z
Email:axb@cse.nd.edu?
Email:axb@defender.dcrl.nd.edu
Tel:(219)-631-5273
------------------------------------------------------------------------
SA - Library for simulated annealing



Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
Author:Skip Carter
FTP from ftp://usc.edu/pub/C-numanal/sa.zoo
Email:skip@taygeta.oc.nps.navy.mil
------------------------------------------------------------------------
Sdeint

A Runge-Kutta like class for integrating systems of Stochastic
Differential Equations.

Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
Author:Skip Carter
FTP from ftp://usc.edu/pub/C-numanal/sdeint.tar.z
Email:skip@taygeta.oc.nps.navy.mil
------------------------------------------------------------------------
SESAME - Neural net software ?



Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
Author:C. Tietz
FTP from ftp://ftp.gmd.de//gmd/as/sesame
------------------------------------------------------------------------
simC - C/C++ function library for discrete simulation

SimC is a function library for C/C++, providing support facilities for
discrete and combined discrete-continuous simulation including set
operations and data collection.

Operating Systems:
  - PC
Added : 19/03/96   Amended : 19/03/96 
Licencing : Shareware
Author:Toh Choon Swee
FTP from ftp://garbo.uwasa.fi/pc/c-lang/simc100.zip
Email:tohcs@pobox.org.sg
Postal address:Toh Choon Swee, Serangoon Garden, P.O. Box 487, Singapore 915533
------------------------------------------------------------------------
SIMEX - Helps develop discrete-event simulation models

Provides classes that help a user develop discrete-event simulation
models, with an emphasis on epidemiology and biology.

Classes for random number generation, event and process management, user
interface (commandline arguments, TTY, or Tcl/TK), aggregate statistics,
basic data structures (list, strings, weighted ordered sets).  Many
examples.

Operating Systems:
  - SunOS
Compilers:
  - Gnu CC
Added : 01/01/95   Amended : 01/01/95 
Licencing : Copyrighted freeware
Fax:(612) 625-7166
FTP from ftp://ftp.nmsr.labmed.umn.edu
WWW http://www.nmsr.labmed.umn.edu
Email:jan@simvax.labmed.umn.edu
Email:michael@simvax.labmed.umn.edu
Postal address:Box 511 UMHC, Div of Health Computer Sciences, U Minn, MPLS, MN 55455
Tel:(612) 625-3241 (Jan Marie Lundgren)
------------------------------------------------------------------------
Simpack - Tools for writing simulations with a EECS bias



Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
Author:Paul A. Fishwick
FTP from ftp://bikini.cis.ufl.edu/cis/tech-reports/tr92/tr92-022.ps.Z
FTP from ftp://bikini.cis.ufl.edu/pub/simdigest/tools/simpack/
Email:fishwick@cis.ufl.edu
------------------------------------------------------------------------
SLASH - Small Perl-like List And String Handling class library

SPLASH is a c++ class library that implements many of the Perl constructs
and data types, including extensive regex regular expression pattern
matching.

For those not familiar with Perl, it is an excellent scripting language by
Larry Wall and is available for most platforms.

This Class library provides List, String, Regular Expression, and text
manipulation handling capabilities based on those provided in Perl.

File names are splashxxx.tar.Z or splashxxx.zip where xxx is the version
number, currently 190 (for version 1.90)

Operating Systems:
  - Unix
  - PC DOS
Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
FTP from ftp://ftp.netcom.com/pub/mo/morris/
Email:morris@netcom.com
------------------------------------------------------------------------
SMURPH - A C++ library which could be useful for building a network simulator

It comes with extensive documentation and examples.

Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
FTP from ftp://menaik.cs.ualberta.ca//pub/smurph/
------------------------------------------------------------------------
SOCKET++ - C++ iostream like library for sockets and pipes

Filename is socket++-XX.tar.gz (XX - version no)

Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
FTP from ftp://ftp.virginia.edu/pub/
------------------------------------------------------------------------
Texas Persistant Store

Texas is a free persistent store that can be used with standard C++
compilers, and works efficiently with very little modification to most C++
programs. It runs on several varieties of UNIX and should be very easy to
port to most modern operating systems, such as OS/2, Windows NT, Mach,
Windows 4.0, etc. (If things we hear are correct, Linux will provide the
necessary virtual memory features soon, too, and Texas will be ported
about fifteen minutes later. :-)

Texas uses "pointer swizzling at page fault time", an address translation
techique that converts pointers from an abstract format to actual virtual
memory addresses when pages are first touched and brought into memory. (A
similar technique, invented independently, is used in the market-leading
persistent store/OODB, ObjectStore from Object Design Inc.)  This allows
Texas to be highly portable, avoiding any assumptions about where a page
of data will be an a process' virtual memory address space; it can also
support very large addresses spaces efficiently on stock 32-bit hardware.
(It could also be used to efficiently provide shared address spaces across
networked heterogenous machines with different hardware address sizes,
e.g., across 32- and 64-bit machines.)

Operating Systems:
  - Unix
Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
Author:Paul R. Wilson and Sheetal V. Kakkad
FTP from ftp://cs.utexas.edu/pub/garbage/texaspstore.ps
FTP from ftp://cs.utexas.edu/pub/garbage/swizz.ps
FTP from ftp://cs.utexas.edu/pub/garbage/texas
Email:oops@cs.utexas.edu
Postal address:Object-Oriented Programming Systems research group, Computer Sciences Dept., University of Texas, Austin, Texas
------------------------------------------------------------------------
TOLKIEN - TOoLKIt for gENetics based applications

The tool contains objects for both GA and classifier system applications.
It's in some kind of alpha-status.

Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
Email:tang028@cs.cuhk.hk
------------------------------------------------------------------------
TSR100JE.ZIP  - TSR class library

DOS PC/Borland C++ specific.

Operating Systems:
  - PC DOS
Compilers:
  - Borland C++
Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
FTP from ftp://garbo.uwasa.fi/pc/c-lang/
FTP from ftp://oak.oakland.edu/pub/msdos/cplusplus/
------------------------------------------------------------------------
Types 1.0

 Types is a Shareware library used to support the creation of reusable
software components in C++.

 Full source code and documentation and examples are included.

Types provides:Garbage Collector,recursive data estructures,encode and
decode of polymorfic objects,encode and decoding to and from files or
memory using external or local data representation, exceptions,...

Types also include some classes implemented using types a double linked
list, stack, btree, storage class, string and others.

You can use and XDR representation for encode and decode objects this
feature enable your data to be ported to other plataforms.

Operating Systems:
  - PC
Compilers:
  - Borland C++ 4.0
Added : 01/01/95   Amended : 01/01/95 
Licencing : Shareware
FTP from ftp://oak.oakland.edu/SimTel/msdos/cpluspls/typesc10.zip
Email:malpica@mailer.main.conacyt.mx
------------------------------------------------------------------------
Unibase Framework - toolkit designed to simplify network programming

The UniBase Framework is a platform-independent toolkit designed to
simplify network programming. You use standard iostream-derived
communication streams with standard io operators, instead of messy
connect() and listen() calls. You can leverage on ALL the code you already
have using standard fstreams and iostreams with little or no modification
and make your program NETWORKED today!

Unix versions due soon.

Free for any purpose, with little requirements (see details at the
downloading home page listed below).

Operating Systems:
  - PC Windows
Compilers:
  - Visual C++
Added : 05/02/96   Amended : 05/02/96 
Licencing : Copyrighted freeware
Author:John Chia-chin Wang
WWW http://bbs.csie.ntu.edu.tw/~jcwang/unibase/index.cgi
Email:jcwang@csie.ntu.edu.tw
------------------------------------------------------------------------
Unidraw - A graphical editor building library

Unidraw is a graphical editor building library based on top of InterViews.

Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
FTP from ftp://interviews.stanford.edu/
------------------------------------------------------------------------
valarray<Troy>

Attempts at providing the functionality described in Chapter 26 of the
draft C++ standard. None of the releases stick perfectly to the
specifications of the proposed standard. Version 2.0 is a very deliberate
step away from the draft as released in April 1995 for public comments in
the USA: it is used as a proof of concept to support a revision of the
original specs.

Some characteristics:
  - heavy usage of templates and their automatic instantiation;
  - avoidance of temporary arrays in array expressions;
  - production of fast compact loops, but some overhead before entering
    those loops.


Operating Systems:
  - Sun
  - Cray
  - PC
Compilers:
  - Borland C++ 4.5
  - Sun CC 4.x
  - Sun CC 3.x
  - CRI C++ (Cray)
  - IBM xlC
  - SGI NCC
  - Apogee CC
Added : 01/01/95   Amended : 22/05/96 
Licencing : Non commercial
Author:David Vandevoorde
FTP from ftp://ftp.cs.rpi.edu/pub/vandevod/Valarray
Email:vandevod@cs.rpi.edu
Postal address:Department of Computer Science, Rensselaer Polytechnic Institute, Troy, NY12180, USA
------------------------------------------------------------------------
wxWindows - C++ class library for building Motif, Open Look, Windows 3.1 and NT
applications

C++ class library for building Motif, Open Look, Windows 3.1 and NT
applications from the same source code. One simple API is provided for all
platforms. wxWindows supports objects such as frames, subwindows, buttons,
list boxes, icons, and bitmaps, and supports drawing into canvases,
PostScript files, Windows printers, metafiles and bitmaps using the same
drawing primitives.

wxWindows provides a hypertext help facility, and a utility for
maintaining documentation in printed and three hypertext formats. It also
provides an interprocess communication API based on DDE, that works under
both Windows 3.1 and UNIX. Documentation is available in PostScript, RTF,
Windows Help, wxHelp and HTML formats.

Julian Smart, Artificial Intelligence Applications Institute, University
of Edinburgh, 80 South Bridge, Edinburgh, Scotland, EH1 1HN, TEL:   031
650 2746


Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
FTP from ftp://ftp.aiai.ed.ac.uk/pub/packages/wxwin
Email:J.Smart@ed.ac.uk
Postal address:Julian Smart, Artificial Intelligence Applications Institute, University of Edinburgh, 80 South Bridge, Edinburgh, Scotland, EH1 1HN
Tel:031 650 2746
------------------------------------------------------------------------
XMS200JE.ZIP  - XMS array class library

Wrapper classes to access XMS, UMBs and the HMA, as well as a templated
XMS array class. Test suites and timing programs provided for each class.
Source included. Free. DOS PC/Borland C++ specific.

Operating Systems:
  - PC DOS
Compilers:
  - Borland C++
Added : 01/01/95   Amended : 01/01/95 
Licencing : Not known
FTP from ftp://garbo.uwasa.fi/pc/c-lang/
FTP from ftp://oak.oakland.edu/pub/msdos/cplusplus/
------------------------------------------------------------------------
XRLCAD - CXrL CAD toolset

This package contains a C++ class library to manipulate Structure (as in
Calma/CIF) hierarchies. There is also loaders for CIF and Calma, as well
as output drivers for these formats. A bunch of demo programs are included
which I wrote when I was testing the library, and these programs turned
out be quite useful tools.

The library is still in its infancy, but it's reasonably solid; in a few
months I'll take another look at it and probably overhaul it.

Operating Systems:
  - sparc-sunos-4.1.3
  - sparc-sunos-5
  - rs6000-aix-3.2
  - decstation-ultrix4.2
  - hppa1.1-hpux9.05
Compilers:
  - Sun CC
  - Cfront
  - Gnu CC
Added : 01/01/95   Amended : 01/01/95 
Licencing : Copyrighted freeware
Author:Mumit Khan
Fax:+1 608 265 3811
WWW http://www.xraylith.wisc.edu/~khan/software/xrlcad/xrlcad.html
Email:khan@xraylith.wisc.edu
Postal address:Mumit Khan, Research Staff, Center for X-ray Lithography, University of Wisconsin-Madison
Tel:+1 608 265 6075
------------------------------------------------------------------------
YACL  - Yet Another Class Library

YACL is a freely available C++ class library that includes GUI classes
based on the Model-View-Controller paradigm. The class protocols are
designed in a platform independent manner, and are implemented under Motif
1.2 as well as under Microsoft Windows and OS/2. This makes it possible to
maintain a single code base for an application that runs on all three
platforms. YACL also includes a suite of container and data storage
classes for general-purpose programming.

Operating Systems:
  - Motif
  - PC Windows 3
  - OS/2
  - X Windows
Added : 01/01/95   Amended : 05/02/96 
Licencing : Not known
Fax:(803) 777-3767
FTP from ftp://ftp.cs.sc.edu/pub/yacl
WWW http://www.cs.sc.edu/~sridhar/yacl.html
Email:sridhar@usceast.cs.sc.edu
Postal address:M. A. Sridhar, Department of Computer Science, University of South Carolina, Columbia, SC 29208, USA
Tel:(803) 777-2427
------------------------------------------------------------------------
Trumphurst Home Page http://www.trmphrst.demon.co.uk/
Web version of this list http://www.trmphrst.demon.co.uk/cpplibs1
Mail amendments or additions to this list to cpplibs@trmphrst.demon.co.uk
The C++ Usenet Newsgroup is comp.lang.c++

Copyright (c)  1996  Nikki Locke, Trumphurst Ltd.
Permission is granted to distribute over the Internet without charge.
The author's permission is required (and usually given) to distribute
in any other way, including on CD.
Mail the author at faqdist@trmphrst.demon.co.uk for permission to distribute
