[Comp.Sci.Dept, Utrecht] Note from archiver<at>cs.uu.nl: This page is part of a big collection of Usenet postings, archived here for your convenience. For matters concerning the content of this page, please contact its author(s); use the source, if all else fails. For matters concerning the archive as a whole, please refer to the archive description or contact the archiver.

Subject: Available C++ libraries FAQ (2/6)

This article was archived around: 07 Apr 2000 18:20:15 GMT

All FAQs in Directory: C++-faq/libraries
All FAQs posted in: comp.lang.c++
Source: Usenet Version

Archive-name: C++-faq/libraries/part2 Comp-lang-c++-archive-name: C++-faq/libraries/part2
Available C++ libraries FAQ (2/6) ================================= Contents ~~~~~~~~ Introduction (part1) Adding or amending entries (part1) Changes since the last update (part1) Libraries available via FTP (A-L) (this file) Libraries available via FTP (M-Z) (part3) 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 (A-L) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ADAPTIVE Communication Environment (ACE) - C++ IPC wrappers This release contains contains the source code, documentation, and example test drivers for a number of C++ wrapper libraries and higher- level distributed application frameworks developed as part of the ADAPTIVE project at the University of Calfornia, Irvine. The C++ wrappers encapsulate many of the user-level BSD and System V Release 4 IPC facilities such as sockets, TLI, select and poll, named pipes and STREAM pipes, the mmap family of memory-mapped file commands, System V IPC (i.e., shared memory, semaphores, message queues), and explicit dynamic linking (e.g., dlopen/dlsym/dlclose) using type-secure, object-oriented interfaces. The higher-level distributed application frameworks integrate and enhance the lower-level C++ wrappers to support the configuration of concurrent network daemons composed of monolithic and/or stackable services A relatively complete set of documentation and extensive examples are included in the release. A mailing list is available for discussing bug fixes, enhancements, and porting issues regarding ACE. Please send mail to ace-users-request@ics.uci.edu if you'd like to become part of the mailing list. Added : 01/01/95 Amended : 19/03/97 Licencing : Not known WWW http://www.cs.wustl.edu/~schmidt/ACE.html Email:ace-users-request@ics.uci.edu ------------------------------------------------------------------------ Aisearch - a package to make writing problem solving programs easier. Offers the programmer a set of search algorithms that may be used to solve all kind of different problems. The following search algorithms have been implemented: - depth-first tree and graph search - breadth-first tree and graph search - uniform-cost tree and graph search - best-first search - bidirectional depth-first tree and graph search - bidirectional breadth-first tree and graph search - AND/OR depth tree search - AND/OR breadth tree search. Although this package is meant as a tool for developing problem solving software it is not meant exclusively for programmers that are familiar with the concept of problem representation and search techniques. The document accompanying this package first describes (though condensed) the theory of problem solving in AI and next explains how the search class library must be used. Furthermore, as the source code is richly commented and as also some demo programs are included the package should also prove useful to people that want to get acquainted with the subject. Added : 01/01/95 Amended : 01/01/95 Licencing : Not known FTP from ftp://obelix.icce.rug.nl/pub/peter/aisearch.tar.Z FTP from ftp://obelix.icce.rug.nl/pub/peter/aisearch.zip ------------------------------------------------------------------------ Amulet - User Interface Development Environment AMULET is a user interface development environment in C++. Code written using Amulet will work with little or no changes on all platforms. More than just another free "virtual toolkit," Amulet includes many features specifically designed to make the creation of highly-interactive, graphical, direct manipulation user interfaces significantly easier. Based on a proven earlier system, called Garnet, that was in wide use in the Lisp community, Amulet adds a number of important innovations and refinements. Important features of Amulet include: - a dynamic, prototype-instance object system that makes prototyping easier - automatic constraint solving integrated with the object system - a "structured-graphics" model (also called a "display list") that handles automatic refresh of objects when the change - a high-level input model that makes it easy to add behaviors to objects and also supports undo and help for operations - a full set of flexible widgets implemented using the Amulet intrinsics, so you can easily experiment with your own widgets; and high-level interactive debugging tools. Widgets include:buttons, check boxes, radio buttons, menus, menu bars (pull-down menus), scroll bars, scrolling windows, and text input fields. Amulet comes with complete documentation including a tutorial. Operating Systems: - X Windows - PC 32-bit Windows - Mac Compilers: - Gnu CC - Object Center - Visual C++ - MetroWerks CodeWarrior Added : 29/02/96 Amended : 29/02/96 Licencing : Public Domain FTP from ftp://ftp.cs.cmu.edu/usr0/anon/project/amulet/amulet/README WWW http://www.cs.cmu.edu/~amulet Email:bam@cs.cmu.edu - Brad A. Myers Postal address:Brad A. Myers, Human Computer Interaction Institute, School of Computer Science, Carnegie Mellon University, Pittsburgh, PA 15213-3891 ------------------------------------------------------------------------ Andy Register's - matrix library It is still under development so there is no documentatin and some functions have not been throughly tested. It is a departure from most matrix libs in that it includes things like UpperTriangular different from Diagonal, from Row, from Col, etc. Added : 01/01/95 Amended : 01/01/95 Licencing : Not known Author:Andy Register FTP from ftp://ftp.cerl.gatech.edu/pub/c++/gtmatrix Email:andy@cerl.gatech.edu ------------------------------------------------------------------------ Arjuna - For writing fault-tolerant (distributed) applications Arjuna provides a set of tools (C++ classes and libraries) for writing fault-tolerant distributed applications using persistent objects, atomic actions, and replication. Included in the system is a C++ stub generator (and associated RPC mechanism) which takes a C++ class definition for an object and generates client and server stub code. Using these stub classes occurs in a relatively transparent manner: the differences between a local and distributed application are typically only a single line. The system has been ported to a wide range of architectures and C++ compilers, both by the authors and other users, and has been in use for several years. A comprehensive manual is available with the distribution. The system has been ported to a wide range of architectures and C++ compilers, both by the authors and other users, and has been in use for several years. Added : 01/01/95 Amended : 01/01/95 Licencing : Education FTP from ftp://arjuna.ncl.ac.uk/ WWW http://arjuna.ncl.ac.uk/ ------------------------------------------------------------------------ AvlTree - C++ AVL tree class implementation This is a C++ implementation of AVL trees. It is targeted more for teaching purposes than for efficiency. Operating Systems: - OS/2 - PC DOS - PC Windows - Unix Compilers: - Cfront - Gnu CC Added : 19/03/97 Amended : 19/03/97 Licencing : Copyrighted freeware WWW http://www.enteract.com/~bradapp/ftp/ - AvlTree class ------------------------------------------------------------------------ Awesime - A C++ task library explicitly designed for simulation Added : 01/01/95 Amended : 01/01/95 Licencing : Not known Author:Dirk Grunwald FTP from ftp://ftp.cs.colorado.edu/pub/cs/misc/Awesime Email:grunwald@foobar.cs.colorado.edu ------------------------------------------------------------------------ BIGINT - N-bit integer math class BIGINT is an unsigned N-bit integer math class for the C++ programming language. BIGFP is a floating point math class based on BIGINT for the C++ programming language. Added : 27/11/97 Amended : 27/11/97 Licencing : Not known WWW http://www.rossi.com/sqr2.htm Submitted by:DanF@xinex.com - Dan Fandrich ------------------------------------------------------------------------ BLAS in C++ Added : 01/01/95 Amended : 01/01/95 Licencing : Not known Author:Damian McGuckin FTP from ftp://usc.edu/pub/C-numanal/blas.cpp.shar.z Email:damianm@eram.esi.com.au ------------------------------------------------------------------------ Blas.cpp.shar.z A BLAS in C++ Added : 01/01/95 Amended : 01/01/95 Licencing : Not known Author:Damian McGuckin FTP from ftp://usc.edu/pub/C-numanal/ Email:damianm@eram.esi.com.au ------------------------------------------------------------------------ Brent's univariate minimizer and zero finder. Ref: G.Forsythe, M.Malcolm, C.Moler, Computer methods for mathematical computations. Precision - double Obsolete - now part of the linalg package Added : 01/01/95 Amended : 30/07/96 Licencing : Not known WWW http:cpplibs2.html#LinAlg.shar ------------------------------------------------------------------------ BRL10 - Binary Relations Library for C/C++ Binary relations are more directly based on semantic concepts rather than on recordlike structures as traditional (relational, hierarchies, networks, object-oriented) models are. Binary Relations tend to be more functionally complete in their information processing capability, and more precise in their semantic modelling. The Binary Relations Approach was implemented in Binary Relations Library for C/C++. BRL is not a full featured DBMS. It does not support all ideas of the Binary Relations Approach. BRL is however a small, fast and reliable engine. BRL provides basic tools for using binary relations in C and C++ programs. Operating Systems: - FreeBSD - PC DOS - PC Windows Compilers: - Gnu CC - Borland C++ Added : 13/11/96 Amended : 13/11/96 Licencing : Non commercial Author:Andrew Girow WWW http://tetragr.zaporizhzhe.ua/home/girow/homepage.html Email:andrew@tetragr.zaporizhzhe.ua ------------------------------------------------------------------------ C* In C++ - Parallel Programming Classes for C++: Added : 01/01/95 Amended : 01/01/95 Licencing : Not known Author:Terry Bossomaier Email:terry@arp.anu.edu.au ------------------------------------------------------------------------ C++ FEM - (Finite Element Method) Library In addition to FEM related classes, this library also has: - Some simple garbage collection stuff - An automatic differentiation library - A sparse matrix library This is an initial release and people should *expect* to have to do some work to get it running on their system. If you have gcc-2.3.3, libg++-2.3[.1], Gnu make and makedepend you shouldn't have too much difficulty however. The code is unsupported, and is distributed under the terms of the GNU Public License. Compilers: - Gnu CC Added : 01/01/95 Amended : 01/01/95 Licencing : GNU copyleft Author:Michael Tiller, University of Illinois (Urbana-Champaign) FTP from ftp://usc.edu/pub/C-numanal/femlib-1.1.tar.gz Email:tiller@solace.me.uiuc.edu ------------------------------------------------------------------------ C++ implementation of differential algebra This is temporarily unavailable while we resolve the question of whether inclusion of codes from Numerical Recipes makes distribution illegal. Available from the netlib mailing list, in c++/mxyzptlk.shar Added : 01/01/95 Amended : 01/01/95 Licencing : Not known Author:Leo Michelotti Email:michelotti@adcalc.fnal.gov Email:netlib@research.att.com ------------------------------------------------------------------------ C++Advio - Advanced i/o and arithmetic compression Portable handling and compression of binary data. Keywords: pipes, arithmetic coding, start-stop coding, endian i/o, compression Operating Systems: - Solaris - HP 9000 - IBM AIX - Dec Alpha - FreeBSD - Mac - PC 32-bit Windows Compilers: - Gnu CC - Sun CC - MetroWerks CodeWarrior - Borland C++ Added : 22/05/96 Amended : 30/07/96 Licencing : Public Domain Author:Oleg Kiselyov WWW http://pobox.com/~oleg/ftp/packages/c++advio.cpt.hqx - Mac distribution WWW http://pobox.com/~oleg/ftp/packages/c++advio.shar.gz - archive (UNIX/PC) WWW http://pobox.com/~oleg/ftp/c++advio.README.txt - README file Email:oleg@acm.org Email:oleg@pobox.com ------------------------------------------------------------------------ C++SIM 1.5.2 - A simulation package written in C++. C++SIM provides discrete process based simulation similar to that provided by the simulation class and libraries of SIMULA. The linked list manipulation facilities provided by SIMSET are also included in the package, and there is support for a variety of statistics gathering classes. The simulation package requires the use of a threads package and currently only works with the following: - Sun's lwp threads and Solaris threads - C++ task library - NT threads - Posix threads - cthreads - Rex threads It has been build on a number of different architectures and C++ compilers, and porting to other systems should be relatively easy. Added : 01/01/95 Amended : 19/03/97 Licencing : Education FTP from ftp://arjuna.ncl.ac.uk WWW http://marlish.ncl.ac.uk:8080/C++SIM/ ------------------------------------------------------------------------ CalcPlus - Interpreter of procedural language The CalcPlus library is the C++ class library which provides an ability to use your own programming language built into C++ project. Any algorithm or any constant needed by application can be carried out into the special file, when process comes to the key point, it calls function or procedure stored in the text file. Interpreter runs the function and process returns back to C++ code. Library contains the interpreter which understands simple nameless procedural language. Bi-directional communication between C++ and the code for interpreter available. Version of the language that comes with the library allows to use functions, procedures, blocks, preprocessor, global and local variables and constants, if/for/while statements. Each variable can have value of type: nil, bool, long, float, string, date. Type definitions and arrays are allowed. Functions and procedures may be recursive. New functions written in C++ may be easily added to the language. Syntax of the language can be modified by changing YACC rules. Interpreter is fast enough and may be helpful for many tasks. Platform independent, YACC required. Operating Systems: - PC DOS - SCO Unix 3.2.4 - SunOS Compilers: - Borland C++ - Visual C++ - Watcom C++ - Gnu CC - Sparcworks Added : 22/05/96 Amended : 22/05/96 Licencing : Shareware Author:Vladimir Schipunov FTP from ftp://ftp.simtel.net/pub/simtelnet/msdos/cpluspls/calcplus.zip Email:vschipun@cammail1.attmail.com ------------------------------------------------------------------------ Callbacks - Inter-component callbacks using functors This library provides a comprehensive, portable, type-safe, efficient, general purpose mechanism for inter-component callbacks using template functors. Full source code and examples. A complete rationale and description of this mechanism appeared in my article in the February 1995 issue of the C++ Report (now reprinted in 'C++ Gems', SIGS Books). Users are strongly encouraged to read the article before proceeding, as the library has minimal embedded documentation at present. Operating Systems: - All - not O/S specific Compilers: - Visual C++ - IBM Cset++ - Borland C++ - Watcom C++ Added : 03/10/96 Amended : 03/10/96 Licencing : Copyrighted freeware Author:Rich Hickey WWW http://www.sigs.com/books/gems.html - C++ Gems WWW http://ourworld.compuserve.com/HomePages/RichHickey Email:hickeyr@ibm.net ------------------------------------------------------------------------ CB++ - CommonBase Database Access Library for C/C++ This library was written in 1989 as a basis for storing C++ objects in a relational database. The development of such a system was stopped in 1990 because of problems with the MS-DOS environment used in this time. My involvement in various user interface projects here in the institute and otherwhere made it sleep until last week. Okay, here is it. It is only the database access layer of the projected object storage system but it has some useful features which are provided by commercial tools out there: - Builds on the C language interface of a database, there is no need for a precompiler (like embedded SQL - which is totally unusable in combination with C++, at least it was three years ago...) - Very simple to use. Unlike the native C interfaces of the databases it is as simple as embedded SQL or some 4th generation languages. - Makes applications portable among different SQL databases. The library itself is relatively easy to port as the database vendor specific code Note - Scott R. Chilcote" (scotty@nando.net) reports he can only find the a README file at the site given, and his attempts to mail the author's address given therein fail. (david_r@netvision.net.il) reports he couldnt find anything at the ftp site. Added : 01/01/95 Amended : 22/05/96 Licencing : Not known FTP from ftp://ftp.leo.org/pub/comp/database/ - (reported new ftp site) FTP from ftp://ftp.x.org/contrib/CB++.0.1.* - (ftp site may be out of date) ------------------------------------------------------------------------ CBMT - Collaborative BioMolecular Tools CBMT provides a number of easy-to-use fundamental classes for biologists, chemists and crystallographers. They include: Molecular Structure, Sequence, Standard Formats (PDB, CIF, GCG, etc), Geometry, Statistics, TextParsing, and a single container class (a dynamic Array). All documentation is in HTML, and member functions have *.c examples. I hope that the system can be extended as a communal effort and am piloting this idea in the C++ course at the Globewide Network Academy Version 1.3 will be posted shortly including an experimental script language (generated automatically from the *.h files) providing support for persistent objects manipulatable by other languages such as tcl or csh. Added : 01/01/95 Amended : 01/01/95 Licencing : Non commercial Author:Peter Murray-Rust FTP from ftp://s-ind2.dl.ac.uk/cbmt/democ12.tar.Z WWW http://www.dl.ac.uk/CBMT/HOME.html WWW http://info.desy.de/gna/html/cc/index.html) WWW http://www.dl.ac.uk/CBMT/HOME.html Email:mbglx@seqnet.dl.ac.uk Email:pmr1716@ggr.co.uk ------------------------------------------------------------------------ CCL110JE.ZIP - Coroutine 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/ ------------------------------------------------------------------------ CDBFile - C++ library to handle dBASE III files CDBFile is a C++ object-oriented package for programmers who need to manipulate dBASE III files in their programs. It enables you to perform many operations on an existing DBF file: reading/writing to it, accessing its values, sorting the records, adding/deleting records, etc. It comes with full text and postscript documentation, and commented source code. A demonstration program, TestDBF, shows the various possibilities of the CDBFile library, and its source file, testdbf.cpp, demonstrates how to implement CDBFile within a program. CDBFile was designed to be as portable as possible: you should be able to compile it under "as is" any DOS/Windows C++ compiler; porting it to Un*x/Linux should also require little effort. Since CDBFile is distributed under the GNU Public License for libraries, I hope that programmers will like it and suggest or implement enhance- ments and additional features to that piece of software. Operating Systems: - PC DOS - PC Windows Added : 19/03/97 Amended : 19/03/97 Licencing : GNU copyleft Author:Herve GOURMELON FTP from ftp://ftp.simtel.net/pub/simtelnet/msdos/database/cdbfile.zip WWW http://www.simtel.net/pub/simtelnet/msdos/database/cdbfile.zip Email:gourmelon@merlin.enssat.fr ------------------------------------------------------------------------ CGI++ - A C++ Library for CGI Programming CGI++ combines an easy and intuitive 'look and feel' with a powerful and rich object-oriented implementation. Features include: - Full support for CGI/1.1 and HTTP/1.0 (the current standards) - Support for Netscape's Cookie and File Upload features. - Support for new HTTP/1.1 methods PUT, GET, OPTIONS and TRACE, in addition to GET, HEAD and POST. - Intelligent parsing of HTTP/1.0 and HTTP/1.1 Headers. - Clean and elegant methods for reading and rendering form elements, and for preserving state, based on a deep object-oriented hierarchy. Powerful interactive debugging mode. - Highly-automated and safe memory management. Shareware. Distributed as source code; modification permitted Free download/unlimited trial; license payable for installation on a WWW or Intranet server. Developer arrangements available for products incorporating the Library. Nick Kew is also author and keeper of the CGI programming FAQ - archived as /www/cgi-faq at RTFM. Operating Systems: - Unix Compilers: - Gnu CC Added : 19/03/97 Amended : 19/03/97 Licencing : Shareware WWW http://pobox.com/%7Ewebthing/cgiplusplus/ Email:nick.kew@pobox.com - Nick Kew ------------------------------------------------------------------------ Cgipp - Very Portable and powerful CGI-Library Cgipp is a small class library which eases the creation of applications for the World Wide Web, and gives you an easy but powerful interface to the CGI interface which will increase your productivity when writing CGI-applications. The Cgipp also provides a class to ease your creation of HTML-pages which can be used as any ostream. The library is highly portable, and can be used with no problems on any unix-system using gcc/g++, and has also been tested with SGI C++ and Sun CC. The library has also been succesfully ported to PCs (both 16-bit DOS and 32-bit DOS/Windows). Operating Systems: - Dec Alpha - Linux - PC DOS - PC Windows - PC 32-bit Windows - SGI Irix - Solaris - SunOS - SYSV - Unix Compilers: - Borland C++ - Gnu CC - SGI CC - Sun CC Added : 27/11/97 Amended : 27/11/97 Licencing : Public Domain Author:Stig Erik Sand FTP from ftp://rembrandt.uib.no/Cgipp.tar - Cgipp Library as zip-file FTP from ftp://rembrandt.uib.no/Cgipp.tar - Cgipp Library as tar-file WWW http://rembrandt.uib.no/Cgipp/ - Cgipp Library Home Page Email:stig@rembrandt.uib.no - If you have any questions, send a mail ------------------------------------------------------------------------ CIDLib - C++ framework for Windows NT 4.0 and Visual C++ 5.0 I am proud (and frankly exhausted :-) to announce the newest release of the CIDLib Class Libraries for C++. CIDLib is a fully object oriented C++ framework for Windows NT 4.0 (or higher) and Visual C++ 5.0 (or higher.) This beta release (Version 0.500) does not contain the original GUI and graphics oriented classes because they have not been fully ported to NT yet. However, since the product has so much to offer for backend developers without the GUI layers, I've decided to go ahead and do this beta release in order to get feedback from users. Even in this 'limited' form CIDLib provides just short of 175 public classes (and of course more that you don't see.) When the graphics and GUI layers are released in the next version, the class count will be closer to 250. This release provides these broad categories of functionality: - Core classes: Strings, memory buffers (heap, system, and shared), areas (floating point and integral coordinate), points, sizes, colors. - Collections: Bags, sorted bags, deques, queues, stacks, linked lists, hash maps, hash sets, object arrays, fundamental arrays. - File System Support: Directory iteration, general file system maintenance, find buffers, path strings, binary files, text files, volume information. - Streams: File, string, and memory streams for text and binary operations, powerful text stream parser. Extensible data sink/source framework. Console text stream derivative that supports command line recall and editing. Support for ASCII and UNICode text formats. - Advanced RTTI: Polymorphic streaming, dynamic object creation, runtime type information, type repository, and meta classes. - Exceptions and Logging: Extensive and extensible support for error and message logging and exception management, runtime error and system exception stack trace dumps. - Locale and Internationization Support: Locale classes and a totally C++ enabled, message file system that supports multiple languages and uses namespace based const values for error and message ids. - Process Control: Thread classes, thread priority janitors, mutexes, semaphores, events, critical sections, process registry, extensible metrics system, janitors for mutexes, critical sections, semaphores. - Mathematical: 4x4 matrices, 2D and 3D vectors, value maps, ranges. - Ray Tracing: Object oriented, extensible ray tracer with scene description language, multithreaded support, for parallel rendering. - Fractals: An object oriented, extensible fractal generation engine, with full multithreaded rendering. Supports pluggable rendering engines and fractal types. Comes with single and multithreaded rendering engines and Julia, Mandelbrot, and Lyapunov fractal types. - Raw Access: Namespace encapsulated access to raw strings and memory buffer APIs, and one for basic mathematical operations. These are not often needed by the outside world but are pulically available. - General Purpose Methods. Typesafe, template or inline methods for many common operations such as bit field manipulation, min/max, pointer manipulation, array sizing, enumeration magic, UNICode buffer manipuluation, etc... - Documentation: Class and member docs are online and available via my home page. Offline docs are in MS Word 6.0 format. The online docs fully cover all of the released classes, though they are spotty on coverage of exceptions thrown right now. Offline docs are in progress but contain a substantial amount of informaton. - Full Source Code. The full source code is included so you can modify the system for your own needs if desired and debug fully. CIDLib is a freeware product at this time and you can freely use it for personal, experimental, or in house development, however it is a beta product still. It cannot be redistributed in any modified form at this time. You can, of course, pass along the unmodified Zip file to anyone you feel would be interested in evaluating this product. None of the source code can be extracted and used in another product, as it is my intellectual property. The eventual GA product will likely be a shareware product, though it will remain free for anyone who just wants to play with it at home for personal use. It will have a very reasonable licensing agreement for commercial or shareware use. Operating Systems: - PC Windows NT Compilers: - Visual C++ Added : 27/11/97 Amended : 27/11/97 Licencing : Copyrighted freeware WWW http://ng.netgate.net/~droddey/ Email:droddey@ng.netgate.net - Dean Roddey ------------------------------------------------------------------------ CmdLine - command-line option and argument parsing framework CmdLine is a full-featured C++ class framework for parsing options and arguments from the command line. Abstract and concrete classes are provided for the command-line, options, arguments, and argument iterators, and the user may add their own specialized argument/option types using subclasses. Operating Systems: - OS/2 - PC DOS - PC Windows - Unix Compilers: - Borland C++ - Cfront - Gnu CC Added : 19/03/97 Amended : 19/03/97 Licencing : Copyrighted freeware WWW http://www.enteract.com/~bradapp WWW http://www.enteract.com/~bradapp/ftp/ - CmdLine option/argument parser Email:bradapp@enteract.com ------------------------------------------------------------------------ CNCL - ComNets Class Library Universal classes: - Tree structured class hierarchy, similar to NIHCL. - Classes for general purposes such as arrays, linked lists, strings. - Interface classes for UNIX system calls: pipes, select. - Persistent objects. Simulation: - Event driven simulation. - Statistical evaluation. - Random number generators and distributions. Fuzzy logic: - Fuzzy sets, fuzzy variables, fuzzy rules and inference - engine for building fuzzy controllers and expert systems. EZD: - Interface classes for DEC's ezd graphics server. Operating Systems: - HP UX - SunOS - Solaris - Linux Compilers: - Gnu CC Added : 01/01/95 Amended : 08/08/96 Licencing : GNU copyleft Author:Martin Junius, Martin Steppler, et al. FTP from ftp://ftp.comnets.rwth-aachen.de/pub/CNCL/ WWW http://www.comnets.rwth-aachen.de/doc/cncl.html Email:cncl-adm@comnets.rwth-aachen.de Postal address:Communication Networks, Aachen University of Technology, D-52056, Aachen, Germany Postal address:Communication Networks, Aachen University of Technology, D-52056 Aachen, Germany ------------------------------------------------------------------------ Complex class - Very complete complex generic class The Complex Library gives you the possibility to do complex arithmetic as simply as real arithmetic in your C++ sources. The class Complex is designed with generic code, allowing you to do single or double floating point arithmetic (default is double). All the algorithms favour numerical stability first and speed secondly. You can download the postscript documentation complex.ps.gz [40 Ko] alone or dowload the complete package (including the documentation) complex.tgz. [47 Ko] Operating Systems: - IBM AIX - Linux - Solaris - Sparc - SunOS - Unix - X Windows Compilers: - Gnu CC - Sun CC Added : 27/11/97 Amended : 27/11/97 Licencing : Public Domain WWW http://wwwinfo.cern.ch/~ldeniau/numana.html/complex.ps.gz WWW http://wwwinfo.cern.ch/~ldeniau/numana.html/complex.tgz Submitted by:Laurent.Deniau@cern.ch - DENIAU Laurent ------------------------------------------------------------------------ Conical - C++ classes for building neural networks CONICAL is a cross-platform library of C++ classes for building biologically realistic simulations of neurons or small neural networks. Its capabilities are similar to large Unix-based packages such as GENESIS and NEURON, but produces simulations which are smaller, faster, and easily imbedded in other applications. CONICAL is still under development, but documentation is fairly complete and includes both introductory material and demo programs. Operating Systems: - Unix - MacOS - PC DOS - PC Windows Compilers: - Gnu CC - Borland Turbo C++ - MetroWerks CodeWarrior Added : 30/07/96 Amended : 30/07/96 Licencing : Education Author:Joseph J. Strout FTP from ftp://ftp-ncmir.ucsd.edu/pub/jstrout/conical.tar.gz - source & docs by ftp WWW http://www-acs.ucsd.edu/~jstrout/conical - CONICAL home page Email:jstrout@ucsd.edu - send email to the author Postal address:J. Strout,3033 Basic Sciences Bldg,UCSD,9500 Gilman Dr.,La Jolla,CA,92093-0608 ------------------------------------------------------------------------ COOL - Texas Instrument's "C++ Object Oriented Library". COOL includes classes like AVL_Tree, Association, Bignum, Binary_Tree, Bit_Set, Complex, Date_Time, Envelope, Gen_String, Handle, Hash_Table, Iterator, List, M_Vector, Matrix, N_Tree, Pair, Quaternion, Queue, Random, Range, Rational, Regexp, Set, Shared, Stack, String, Timer, Value, Vector. COOL uses a special "template" syntax which is preprocessed by a special cpp (distributed with COOL). This enables it to be used with compilers which do not support templates. Added : 01/01/95 Amended : 05/02/96 Licencing : Not known FTP from ftp://ftp.ti.com/pub/COOL.tar.Z ------------------------------------------------------------------------ CSLIB - Database library for C++ developers A series of C++ classes in combination with a program generator is used to build databases with automatically updated indexes, access to fields, support for DATE fields, exporting to dBASE and so on. It also contains classes for variable-length records, virtual heaps, btrees etc. Some helpful utilities are included as well. CSLIB produces stand-alone executables. It is NOT just an interface to some central database server. Evaluation version. Operating Systems: - PC DOS - PC Windows - OS/2 - Linux Compilers: - Watcom C++ - Borland C++ - Visual C++ - Gnu CC Added : 19/03/97 Amended : 19/03/97 Licencing : Not known Author:Theo van den Bout, ComBits Software FTP from ftp://ftp.simtel.net/pub/simtelnet/win3/prog/csliw205.zip - Windows 3.11 version FTP from ftp://ftp.simtel.net/pub/simtelnet/win95/prog/cslin205.zip - Win95 & NT version WWW http://www.simtel.net/pub/simtelnet/win3/prog/csliw205.zip - Windows 3.11 version WWW http://www.xs4all.nl/~combits/ WWW http://www.simtel.net/pub/simtelnet/win95/prog/cslin205.zip - Win95 & NT version Email:cslib@combits.nl Email:T.P.vandenBout@et.tudelft.nl ------------------------------------------------------------------------ CSock C++ Socketing Library - An advanced wrapper for Windows socketing An advanced wrapper for Windows socketing. Uses newer C++ language extensions to shred the amount of code required for socketing applications. All the standard Windows socketing wrapper classes usually implemented, and then: - Insertion and extraction operators are templatized so you won't have to implement new ones. - Address type classes are polymorphic and also templatized -- one line to add a new one. - Ability to dynamically load WINSOCK at runtime, in case TCP/IP is not installed. - Quite easy to port. $20.00 U.S. shareware license entitles registered users to updates through version 2.99. FTP functionality is already partially complete. Distributed as source code. Should work with any compiler that supports exceptions, templates and new cast operators. Operating Systems: - PC 32-bit Windows Compilers: - Visual C++ Added : 13/11/96 Amended : 13/11/96 Licencing : Shareware Author:TRI Software, a division of TRInternational, Inc. WWW http://junior.apk.net/~tri/csock/ Email:tri@apk.net ------------------------------------------------------------------------ Cvmath.cc - An include file to make complex math look like regular math. The file uses a lot of operator overloading, so that if x=a+ib and y=c+id, the code for multiplying the two together looks like z = x*y; Also, the file includes nrutil from Numerical Recipes, and adds the complex versions for vectors and matrices. Added : 01/01/95 Amended : 01/01/95 Licencing : Not known Author:Leonard Kamlet FTP from ftp://usc.edu/pub/C-numanal/cvmath.cc Email:lik@engin.umich.edu ------------------------------------------------------------------------ DiamondBase - Add Relational Database functionality to your C++ programs DiamondBase is a library of C++ routines and utilities that allow you to add Relational Database functionality to your C++ programs. It is written entirely in C++, and great pains have been taken to ensure it compiles under a variety of compilers. It comes with a 47 page manual. Operating Systems: - Unix - OS/2 Compilers: - Gnu CC - Cfront - Borland C++ for OS/2 Added : 01/01/95 Amended : 01/01/95 Licencing : Not known FTP from ftp://pippin.cs.monash.edu.au/pub/export/ Email:davison@molly.cs.monash.edu.au Email:kevinl@bruce.cs.monash.edu.au Email:darrenp@dibbler.cs.monash.edu.au ------------------------------------------------------------------------ Diffpack - Quick prototyping of simulators solving partial differential equations by FEM Diffpack is a large and comprehensive C++ package aiming at quick prototyping of simulators solving partial differential equations by FEM. Under development at SINTEF Applied Mathematics and the University of Oslo, Norway. Version 1.0 of Diffpack is released for free non-commerical use and is distributed by netlib. For further details refer to the Diffpack WWW home page Added : 01/01/95 Amended : 01/01/95 Licencing : Not known WWW http://www.oslo.sintef.no/avd/33/3340/diffpack ------------------------------------------------------------------------ Doctor Matrix - Matrix and vector algebra package for C++ Doctor Matrix is a matrix and vector algebra package for C++. It allows the C++ programmer to perform calculations on matrices and vectors within C++ programs. Over 50 functions are supported, including ranking, determinant calculation, matrix addition and multiplication, inversion, and more. Comprehensive documentation provides instructions for use of all functions and mathematical definitions of their purpose. Shareware version is limited to DOS programming in Borland C++ and for Tiny or Small memory models. Special requirements: The Shareware version supports compilation only under Tiny or Small memory models. Borland C++ compiler recommended. Operating Systems: - PC DOS Compilers: - Borland C++ Added : 19/03/97 Amended : 19/03/97 Licencing : Shareware Author:Zvika Ben-Haim FTP from ftp://ftp.simtel.net/pub/simtelnet/msdos/cpluspls/drmatrix.zip WWW http://www.simtel.net/pub/simtelnet/msdos/cpluspls/drmatrix.zip Email:zvikabh@rotem.technion.ac.il ------------------------------------------------------------------------ DoPVM - A class built on PVM, for message passing environments. Added : 01/01/95 Amended : 01/01/95 Licencing : Not known Author:Skip Hartley Email:skip@mathcs.emory.edu ------------------------------------------------------------------------ DOSTmUit - DOS Text Mode User Interface Toolkit Enables C++ programmers to add a CUA-compliant user interface to their DOS programs without getting involved in screen coordinates and other messy details. The programmer merely states which interface objects are required, and how they are to be placed on the screen in relation to each other. Those familiar with the ET++ toolkit for the X windows system under Unix will get the general idea. Includes a class documentation facility (DocClass) which will generate a large text file from the source code giving details of every class, structure, enum and extern in the toolkit. This program will also work on your own C++ source code. Source is provided. Operating Systems: - PC DOS Compilers: - Zortech C++ 3.0 - Borland C++ 3.1,4.X Added : 01/01/95 Amended : 01/01/95 Licencing : Non commercial Author:Nikki Locke, Trumphurst Ltd. WWW http://www.trumphurst.com/toolkit.html WWW http://www.trumphurst.com/toolkit/ Email:uit@trmphrst.demon.co.uk ------------------------------------------------------------------------ Drat - A C++ interface to the curses library Drat contains several classes for interfacing with the UNIX curses library, including menus with callback's, and other common forms. Added : 05/02/96 Amended : 05/02/96 Licencing : Not known WWW http://www.best.com/~smurman/Drat Email:smurman@best.com ------------------------------------------------------------------------ ET++ - A large GUI library and other C++ tools developed in Europe The Authors are both with Taligent now. Added : 01/01/95 Amended : 01/01/95 Licencing : Not known Author:Andre Weinand and Erich Gamma FTP from ftp://ftp.ubilab.ubs.ch/ FTP from ftp://ftp.inria.fr/gnu/et++-2.0.tar.Z ------------------------------------------------------------------------ FFTPACK++ - C++ version of FFTPACK FFT_Pack is a C++ wrapper for FFTPACK complex routines using LAPACK++ Matrix and Vector classes. FFTPACK routines were converted to C using f2c and also modified to use double precision complex using -r8 to f2c. Most of this code was lifted directly from GNU OCTAVE v1.1.0, hence the copyright notice at the top. The forward FFT takes you to freq domain (ala direction == -1), and backward the other way. Passing LaVectorComplex/Double or LaGenMatComplex/Double with one dimension set to 1 will implicitly perform 1D FFT on the data. The members of the FFT_Pack class are declared static, since they really need no private member storage. There are two types of transform routines: ones that return a new complex matrix and the ones that change the matrix in place. Compilers: - Cfront - Gnu CC Added : 01/01/95 Amended : 01/01/95 Licencing : GNU copyleft Author:Mumit Khan Fax:608 265 3811 WWW http://www.xraylith.wisc.edu/~khan/software/fftpack/ Email:khan@xraylith.wisc.edu Postal address:Center for X-ray Lithography, University of Wisconsin - Madison Tel:608 265 6075 ------------------------------------------------------------------------ FFTW - Fast C library for computing the Fast Fourier Transform (FFT) Fast C library for computing the Fast Fourier Transform (FFT) Operating Systems: - All - not O/S specific Added : 27/11/97 Amended : 27/11/97 Licencing : Non commercial Author:Matteo Frigo and Steven G. Johnson WWW http:http://theory.lcs.mit.edu/~fftw Email:fftw@theory.lcs.mit.edu ------------------------------------------------------------------------ GAGS - C++ class library for Genetic algorithms It includes classes for chromosomes and populations. Library:binary chromosome representation. Genetic operators: mutation, xOver (n-pt and uniform), remove/reinsert. Selection operator: steady state, tournament, roulette wheel. Perl and/or tcl/tk graphic front-end. Graphics through gnuplot. Training from file. Application generator: it needs only an ANSI-C definition of the fitness function. It's parsed, and a program that runs a GA on it is generated. Operating Systems: - Unix Compilers: - Gnu CC - SGI CC - Sun CC Added : 08/02/96 Amended : 08/02/96 Licencing : Copyrighted freeware Author:JJMerelo Fax:34-58-243230 FTP from ftp://kal-el.ugr.es/GAGS/GAGS-0.94e.tar.gz WWW http://kal-el.ugr.es/gags.html Email:jmerelo@kal-el.ugr.es Tel:34-58-243162 ------------------------------------------------------------------------ GAME - Parallel Genetic Algorithms Theory and Applications Edited by: J. Stender Publisher: IOS Press Frontiers in Artificial Intelligence and Applications series 1993, 225 pp; hard cover; w/ disk ISBN: 90 5199 087 1 Price: $85, 59 pounds sterling The first version of the GAME Virtual Machine software and two examples that come with the book can be obtained also by ftp. Added : 01/01/95 Amended : 01/01/95 Licencing : Not known FTP from ftp://bells.cs.ucl.ac.uk/papagena/game/version1/ ------------------------------------------------------------------------ GECOOL 2.1 - A reworking and enhancement of Texas Instrument's "C++ Object Oriented Library" By some programmers at General Electric. Also available is JCOOL. Its main difference from COOL and GECOOL is that it uses real C++ templates instead of a similar syntax that is preprocessed by a special 'cpp' distributed with COOL and GECOOL. Some users behind "firewalls" have had difficulty accessing the ftp site. Added : 01/01/95 Amended : 05/02/96 Licencing : Not known FTP from ftp://ftp.cs.utexas.edu/pub/COOL/ ------------------------------------------------------------------------ Generic Linked List Package A package to define, create, update query and delete one or more (nodes of) linked lists, to sort linked lists, and so on. The user doesn't have to take care of allocating a number of bytes for a node, inserting on the right place, deleting and freeing a node and so on. Added : 01/01/95 Amended : 01/01/95 Licencing : Not known FTP from ftp://hermes.bouw.tno.nl/pub/TNO/BOUW/Bouwinf/linkedlist0.10.shar FTP from ftp://ftp.tno.nl/pub/TNO/BOUW/Bouwinf/linkedlist0.10.shar ------------------------------------------------------------------------ GINA++ - An O-O application framework for C++, X11R5, and OSF/Motif GINA++ (The Generic INteractive Application for C++) is an object- oriented application framework that facilitates the development of applications with a graphical user interface. It is written in C++ and uses OSF/Motif and X for the user interface parts. GINA++ comes as a library of C++ classes, 10 small to medium demo applications, and it is fully documented. Components of GINA++ are: - A C++ encapsulation of OSF/Motif providing easy-to-use mechanisms for deriving new widget classes completely in C++ - Support for object-oriented graphics (rectangles, arrows, circle, etc) - An unlimited undo/redo history mechanism - supporting classes for data structures (list, arrays, etc), run-time type information, and a notification mechanism. The classes of GINA++ constitute an executable program - the generic application - which possesses the basic functionality and the user interface components common to all interactive graphical applications, but lacks any application-specific behavior. The predefined functionality and behavior is inherited by deriving subclasses from the existing GINA++ classes. Application specific behavior is implemented by adding new classes and member functions. Differences to the standard application are coded by refining virtual member functions inherited from GINA++. Operating Systems: - HP UX - Sparc - X Windows Compilers: - Cfront Added : 01/01/95 Amended : 01/01/95 Licencing : Not known Author:Andreas Baecker FTP from ftp://ftp.x.org/contrib/ FTP from ftp://ftp.gmd.de/gmd/ginaplus Email:baecker@gmd.de Postal address:GMD, P.O. Box 1316, D-53731 Sankt Augustin ------------------------------------------------------------------------ Gnans - Simulation of stochastic and deterministic dynamical systems A program (and language) for dynamical systems. Includes simple scripting language. Graphical user interface. Operating Systems: - SunOS - SGI Irix - IBM AIX - X Windows Added : 01/01/95 Amended : 01/01/95 Licencing : GNU copyleft Author:Bengt Martensson FTP from ftp://ftp.mathematik.uni-Bremen.de/pub/gnans Email:bengt@mathematik.uni-Bremen.de ------------------------------------------------------------------------ Grail - Symbolic computation with finite-state machines and regular expressions Supports conversion of FSM to RE and back and also conversion to and from finite languages. Supports many algebraic operations on FSM and RE. All objects are templates, so you can parameterize FSM or RE to use any C++ class or base type as its alphabet type (hence, Mealy machines are supported by using ordered pairs as the alphabet type). Compilers: - Cfront - IBM xlC - IBM Cset++ - Watcom C++ Added : 22/05/96 Amended : 22/05/96 Licencing : Education WWW http://www.csd.uwo.ca/research/grail Email:drraymond@csd.uwo.ca ------------------------------------------------------------------------ GRAS - A Graph-Oriented Database System for SE Applications Copyright (C) 1987-1992 Lehrstuhl Informatik III, RWTH Aachen This library is free software under the terms of the GNU Library General Public License. The system GRAS with interfaces for the programming languages Modula-2 and C is available as public domain software for Sun3/Sun4 workstations (the GRAS system itself is implemented in Modula-2 and consists of many layers which might be reusable for the implementation of other systems): There are several files contain documentation, sources, binaries, and libraries. All binaries are for Sun/4 machines. Sun/3 binaries are shipped only if explicitly requested. Operating Systems: - Sun Added : 01/01/95 Amended : 01/01/95 Licencing : GNU copyleft Author:Dr. Andy Sch"urr (or Richard Breuer) FTP from ftp://tupac-amaru.informatik.rwth-aachen.de/pub/unix/GRAS522_3 Email:ricki@rwthi3.informatik.rwth-aachen.de Email:andy@rwthi3.informatik.rwth-aachen.de Postal address:Lehrstuhl f"ur Informatik III, University of Technology Aachen (RWTH Aachen), Ahornstr. 55, D-5100 Aachen ------------------------------------------------------------------------ Grayscale Image Processing Enhanced grayscale image processing class library and verification code, source code Keywords: image arithmetics, median filtration, morphological filtration, convolution, lazy image, TIFF, plasma fractals, nondeterministic filter, class library Operating Systems: - Solaris - HP 9000 - rs6000-aix-3.2 - Dec Alpha - FreeBSD - PC 32-bit Windows - BeOS DR8 - MacOS - Concurrent Maxion 8000/RTU Compilers: - Gnu CC - Sun CC - MetroWerks CodeWarrior - Borland C++ Added : 22/05/96 Amended : 19/03/97 Licencing : Public Domain Author:Oleg Kiselyov WWW http://pobox.com/~oleg/ftp/packages/grayimage.cpt.hqx - Mac distribution WWW http://pobox.com/~oleg/ftp/packages/image.shar.gz - archive (UNIX/PC) WWW http://pobox.com/~oleg/ftp/image.README.txt - README file Email:oleg@acm.org Email:oleg@pobox.com ------------------------------------------------------------------------ Hans Boehms GC - Hans Boehms free Garbage Collector Conservative garbage collector for C/C++. Several interfaces are provided. Can be used as a transparent malloc replacement, or implements much of the Detlefs/Ellis C++ GC proposal, or can be used as an allocator for SGI's STL. Can be used with the large majority of operating systems that support 32- or 64-bit flat addressing, i.e. almost all UNIX variants, win32, and a few others. Operating Systems: - Unix - PC 32-bit Windows Added : 01/01/95 Amended : 04/12/97 Licencing : Copyrighted freeware FTP from ftp://ftp.parc.xerox.com/pub/gc - Old version WWW http://reality.sgi.com/boehm/gc.html ------------------------------------------------------------------------ High level vector operations Contains the Aitken-Lagrange interpolation over the table of uniform or arbitrary mesh, and the Hook-Jeevse multidimensional minimizer. Precision single/double. Obsolete - now part of the Lin-alg package. Added : 01/01/95 Amended : 30/07/96 Licencing : Not known WWW http:cpplibs2.html#LinAlg.shar ------------------------------------------------------------------------ HugeCalc - Arbitrary accuracy large integer calculations HugeCalc is a package for performing long integer calculations with up to 300 digits of accuracy. The package allows C++ programmers to define objects of type HugeInt and use them just like ordinary integers to perform addition, subtraction and multiplication operations. Most of the ordinary mathematical operators are supported in the ordinary fashion. Includes object modules for Borland C++, example programs and complete documentation. Shareware version contains object modules for tiny, small and medium memory models only. Operating Systems: - PC DOS Compilers: - Borland C++ - Visual C++ Added : 27/11/97 Amended : 27/11/97 Licencing : Shareware Author:Zvika Ben-Haim WWW http://www.technion.ac.il/~zvikabh/software.html - Official software homepage WWW http://www.technion.ac.il/~zvikabh/software/hugecalc.zip - Download from Technion (Israel) WWW http://ftp.funet.fi/pub/mirrors/ftp.simtel.net/pub/simtelnet/msdos/cpluspls/hugecalc.zip - Download from Funet (Finland) WWW http:www.simtel.net/pub/simtelnet/msdos/cpluspls/hugecalc.zip - Download from Simtel.Net (USA) Email:zvikabh@aluf.technion.ac.il - Send mail to the author ------------------------------------------------------------------------ InterViews - GUI class library developed by Stanford University Make sure you get v3.1 or later. This library contains excellent examples of multiple inheritance used profitably. I understand that InterViews development will not continue past the current version; author Mark Linton is concentrating his efforts on the X Consortium Fresco project, which should show up in X11R6. Added : 01/01/95 Amended : 01/01/95 Licencing : Not known FTP from ftp://interviews.stanford.edu/ FTP from ftp://ftp.informatik.uni-kiel.de/pub/graphics/X/InterViews ------------------------------------------------------------------------ ISC366.ZIP - Interrupt Service Class (v. 3.66) Allows hooking of interrupts (software and hardware) into classes, comes with classes for staying resident, for serial communication (interrupt driven), and like-wise classes. Comes with full source code! Operating Systems: - PC DOS Compilers: - Borland C++ 3.0 - Borland C++ 3.1,4.X Added : 01/01/95 Amended : 01/01/95 Licencing : Public Domain FTP from ftp://oak.oakland.edu/pub/msdos/cpluspls/ FTP from ftp://oak.oakland.edu/pub/msdos/cplusplus/ ------------------------------------------------------------------------ JX - Application framework and widget library for use with X Windows JX is a full-featured C++ application framework and GUI class library for X Windows. It provides support for all facets of application development, including distributed applications, and aims to combine the best of MacOS and NeXTSTEP. It is built directly on top of Xlib and has been carefully optimized for performance. Operating Systems: - Dec Alpha - Dec Ultrix - HP UX - Linux - SGI Irix - Solaris - Sparc - SunOS - Unix - X Windows - Designed to work on any UNIX platform Compilers: - Gnu CC - Designed to be compiler independent Added : 06/12/97 Amended : 06/12/97 Licencing : Copyright (other) WWW http://www.cco.caltech.edu/~jafl/jx/! - JX Main Page WWW http://www.cco.caltech.edu/~jafl/sypp/ - SYPP license Submitted by:jafl@alice.wonderland.caltech.edu - John Lindal ------------------------------------------------------------------------ Kalman - A class library for Kalman filtering Contains lumatrix.c++ etc. Compilers: - Gnu CC Added : 01/01/95 Amended : 01/01/95 Licencing : Not known Author:Skip Carter FTP from ftp://usc.edu/pub/C-numanal/kalman.tar.gz Email:skip@taygeta.oc.nps.navy.mil ------------------------------------------------------------------------ Lapack++ - C++ version of some of lapack fortran code Developmental version of proposed C++ version of lapack. Contains blas.h++ etc, but needs Fortran library to link. Documents : Overview paper (9 pages postscript), release notes (7 page ps) Added : 01/01/95 Amended : 01/01/95 Licencing : Not known Author:J. Dongarra, R. Pozo, D. Walker FTP from ftp://netlib2.cs.utk.edu/lapack++/ ------------------------------------------------------------------------ LEDA, - A Library of Efficient Data Types and Algorithms Provides basic data-types like lists, stacks, queues, trees, sets, partitions, priority queues and a few others. These are parameterizable classes, you may add your own datatype and have a priority queue ... An important datatype is a graph, these are also parameterizable and there are useful algorithms for them like shortest path, transitive closure, matching, maximum flow, spanning tree and others, we have implemented a few algorithms for dealing with perfect graphs, but these ar not part of the standard library. The latest part deals with computational geometry. It can be used with C++ compilers which understand templates Compilers: - Cfront - Gnu CC Added : 01/01/95 Amended : 01/01/95 Licencing : Education Author:Stefan Naeher FTP from ftp://ftp.mpi-sb.mpg.de/pub/LEDA/ Email:stefan@mpi-sb.mpg.de Postal address:Max-Planck-Institut fuer Informatik, Im Stadtwald, 6600 Saarbruecken, Germany ------------------------------------------------------------------------ libg++ - (GNU's C++ library) Libg++ is probably only relevant if you are using g++; and if so, you already know about it. It does have some good implementations of bignum's and of regular expressions and strings. Compilers: - Gnu CC Added : 01/01/95 Amended : 01/01/95 Licencing : Not known FTP from ftp://aeneas.mit.edu/pub/gnu/ ------------------------------------------------------------------------ Lily (LIsp LibrarY) - Gives C++ programmers the capability to write LISP-style code I think Lily will be useful in academia for instructors who want to teach artificial intelligence techniques with C++. The garbage collection mechanism employed by Lily is slow which will make it unattractive for commercial use. Documentation is minimal. The "Lily User's Guide" (in file lily.txt) provides a good overview of the architecture of Lily -- the document is unfinished. All of the example programs are from Winston's book "LISP Second Edition" so you will be much better off if you have a copy. Steele's "Common LISP" describes the behavior of the LISP functions. Operating Systems: - PC Windows 3 - Unix Compilers: - Gnu CC - Borland Turbo C++ Added : 01/01/95 Amended : 01/01/95 Licencing : GNU copyleft FTP from ftp://sunsite.unc.edu/pub/packages/development/libraries/lily-0.1.tar.gz ------------------------------------------------------------------------ LinAlg.shar - basic linear algebra classes and applications basic linear algebra classes and applications (SVD, interpolation, multivariate optimization) The package contains declarations of Matrix, Vector, subMatrix over the real domain, and *efficient* and fool-proof implementations of level 1 & 2 BLAS (element-wise operations + various multiplications), transpositions and determinant evaluation/inversion. There are operations on a single row/col/diagonal of a matrix. The "new style" of returning matrices (via LazyMatrix) and filling them out. New in the Jan 1996 version: extended to include singular value decomposition (SVD) and its applications to (a regularized) solution of simultaneous linear equations (with possibly rectangular matrices) and (pseudo)matrix inverse. This version of LinAlg.shar also includes Aitken-Lagrange interpolation over the table of uniform or arbitrary mesh, and a Hook-Jeevse local multidimensional minimizer, formerly of hl_vector.shar package. Matrix/Vector/etc classes are expanded with new methods. More attention to Matrix/Vector promises. The code is made cross-platform compatible (compiles both under UNIX and on a Mac). See LinAlg.h for the complete list of classes and functions, and vmatrix.cc, vvector.cc, etc. test drivers as to how the features can be used. See README for hints. Operating Systems: - Mac - Unix - Solaris - IBM AIX - Dec Alpha - SGI Irix Compilers: - Gnu CC - MetroWerks CodeWarrior Added : 22/05/96 Amended : 30/07/96 Licencing : Public Domain Author:Oleg Kiselyov FTP from ftp://pobox.com/~oleg/ftp/packages/LinAlg.cpt.hqx - Mac distribution FTP from ftp://pobox.com/~oleg/ftp/packages/LinAlg.tar.gz - archive (UNIX/PC) WWW http://pobox.com/~oleg/ftp/LinAlg.README.txt - README file Email:oleg@acm.org Email:oleg@pobox.com ------------------------------------------------------------------------ This public domain portable C++ library is the bas - MozillaV3 CGI C++ Library This public domain portable C++ library is the basis of a CGI. It contains all external aspects that should be required by a CGI script, from options to hash containers. It provides one minute implementation of hours of work and allows optimal performance and ease of use. Writing a guestbook using this library which can be used by as many people as wanted is a question of minutes! This Mozilla-V3 library is in a state of providing all internal structures to write virtually any kind of html output CGI. This library was written for an HTML based forum (called aGNeS) that is successfully running for hundreds of users all over the world. It is open for all suggestions and modifications. Compilers: - Gn u CC - Visual Added : 04/12/97 Amended : 04/12/97 Licencing : Public Domain Submitted by:doubrov5@cuimail.unige.ch, dblock@infomaniak.ch - Daniel Doubrovkine ------------------------------------------------------------------------ Trumphurst Home Page http://www.trumphurst.com/ Web version of this list http://www.trumphurst.com/cpplibs Mail amendments or additions to this list to cpplibs@trmphrst.demon.co.uk The C++ Usenet Newsgroup is comp.lang.c++ Copyright (c) 1997 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 -- Nikki Locke, Trumphurst Ltd. PC & Unix consultancy & programming nikki@trmphrst.demon.co.uk http://www.trumphurst.com