Date: Wed, 08 Oct 1997 08:28:20 -0400 (EDT) From: C++ Newsgroup ModeratorsTo: hcking@acssun.pstcc.cc.tn.us Subject: (1/6) Contents
Introduction Adding or amending entries Changes since the last update Libraries available via FTP (A-L) Libraries available via FTP (M-Z) Tools for C++ Programmers Libraries with no known FTP site Source code from books Other places to look for details of C++ libraries Useful ftp sites Commercial libraries (A-N) Commercial libraries (O-Z) Other commercial sources of C++ code ------------------------------------------------------------------------ Introduction ~~~~~~~~~~~ Here is the latest draft of a list of available C++ libraries I am compiling. I intend to post this once a month or so (unless there are any complaints). It is submited to comp.lang.c++ and news.answers, and is available for public ftp (along with all the other Usenet FAQ lists) at rtfm.mit.edu (18.70.0.209), in file pub/usenet-by-group/comp.lang.c++/C++-faq/libraries/part1 through part6). It is also available on the Web, at "http://www.trmphrst.demon.co.uk/cpplibs1.html". Rtfm.mit.edu also has a mail server - send a mail message containing "usenet-by-group/comp.answers/C++-faq/libraries/*" to mail-server@rtfm.mit.edu. If you want to find out more about the mail server, send a message to it containing "help". Marshall Cline's C++ FAQ should also be available from rtfm - the files are called _posting_#1_4, _posting_#2_4, _posting_#3_4 and _posting_#4_4, and they are in directory pub/usenet-by-group/comp.lang.c++/. I have not included a credits list, because it would be nearly as large as the rest of the file! Many thanks to all those who contributed, and I hope you won't be offended that I haven't mentioned you. Please mail comments, criticisms, additions and amendments to me at cpplibs@trmphrst.demon.co.uk. However, please DO NOT mail me with requests for assistance in finding files mentioned in the list. I am unable to provide such a service. Definite information such as "file xyz is no longer at site xxx" IS welcome - even better if you can tell me an alternative site where it can be found. If you are new to the Internet, try to find out about tools such as archie, whois, www, gopher etc. I recommend the newsgroups "news.announce.newusers" and "news.answers" for starters. Added : 01/01/95 Amended : 01/08/96 FTP from ftp://rtfm.mit.edu/pub/usenet-by-group/comp.lang.c++/ - C++ directory at rtfm WWW http://www.trmphrst.demon.co.uk/cppsub.html - A Web form to add your submission to the list WWW http://www.trmphrst.demon.co.uk/cpplibs1.html - Web version of the list Email:cpplibs@trmphrst.demon.co.uk - Mail a submission to the list Email:mail-server@rtfm.mit.edu - RTFM mail server Newsgroup:news.answers Newsgroup:comp.lang.c++ ------------------------------------------------------------------------ Adding or amending entries ~~~~~~~~~~~~~~~~~~~~~~~~~ If your library isn't mentioned, or you wish to update your entry in this list, feel free to mail me the new entry, or submit it via the Web form. Please note that entries will be restricted to a couple of paragraphs - if you send me a 100k text file giving minute details, I will have to summarise it. Or I might just ignore it, if I'm busy. It is much easier for me if you just send me an entry which is the right size to start with. Please try to format your entry in the same way as the entries already in this list. Suggested points to include in your entry are ... - Name of package - 1-line summary of purpose - Short list of features - Supported compilers - Supported operating systems - Licence restrictions - Vendors may care to give an idea of prices - E-mail addresses for more details - Ftp site(s) - WWW URL - Postal address/telephone/FAX numbers. If you wish, you may include HTML tags in your text, which will make it through to the WWW version of this document. Please do not use heading levels 1-3, and please do not include any hot links in the body of the text - all links should occur at the end of the text. Please add references at the end of your text in the form : - [;] Where -
is one of http, ftp, mailto, news, author, postal, tel, fax or bbs - - is a single line of text. Separate parts of a postal address with commas. - is optional text describing the reference Examples: - http://www.ashmount.com/trumphurst/cpplibs1;Available C++ Libraries - ftp://ftp.ashmount.com/trumphurst/docclass/docclass.zip;DocClass utility - mailto:cpplibs@trmphrst.demon.co.uk;Mail a submission to the FAQ - news:comp.lang.c++ - author:Nikki Locke - fax:1-800-456-789;Toll-free enquiries Please mail comments, criticisms, additions and amendments to me at cpplibs@trmphrst.demon.co.uk. NOTE TO VENDORS This FAQ contains details of both free and commercial libraries. Vendors who have sent me details of their libraries for inclusion in the FAQ have been pleasantly surprised by the level of interest generated. Please remember, I only allow 2 or 3 paragraphs describing the product, and no advertising hype ! Added : 01/01/95 Amended : 22/05/96 WWW http://www.trmphrst.demon.co.uk/cppsub.html - A Web form to add your submission to the list Email:cpplibs@trmphrst.demon.co.uk - Mail a submission to the list ------------------------------------------------------------------------ Changes since the last update ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Last update was on May 23 1996 Web site moved from enterprise.net to demon.co.uk (part1) Conical added on Jul 30 1996 (part2) Grayscale Image Processing updated on Jul 30 1996 (part2) C++Advio updated on Jul 30 1996 (part2) LinAlg.shar updated on Jul 30 1996 (part2) ADAPTIVE Communication Environment (ACE) updated on Jul 30 1996 (part2) High level vector operations updated on Jul 30 1996 (part2) Brent's univariate minimizer and zero finder. updated on Jul 30 1996 (part2) Newmat updated on Jul 30 1996 (part3) MATCOM updated on Jul 30 1996 (part3) ------------------------------------------------------------------------ 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++ ------------------------------------------------------------------------ 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. I have been informed that the ftp site listed may be incorrect. Correct information would be appreciated. Added : 01/01/95 Amended : 30/07/96 Licencing : Not known FTP from ftp://wuarchive.wustl.edu/languages/c++/ACE/ 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/ ------------------------------------------------------------------------ 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 ------------------------------------------------------------------------ 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 ------------------------------------------------------------------------ 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 FTP from ftp://replicant.csci.unt.edu/pub/oleg/c++advio.cpt.hqx - Mac distribution FTP from ftp://replicant.csci.unt.edu/pub/oleg/c++advio.README.txt - README file (ftp) FTP from ftp://replicant.csci.unt.edu/pub/oleg/c++advio.shar WWW http://mozart.compsci.com/~oleg/ftp/c++advio.README.txt - README file (Web) Email:oleg@ponder.csci.unt.edu ------------------------------------------------------------------------ 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 : 01/01/95 Licencing : Education FTP from ftp://arjuna.ncl.ac.uk WWW http://arjuna.ncl.ac.uk ------------------------------------------------------------------------ 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 ------------------------------------------------------------------------ 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.x.org/contrib/CB++.0.1.* ------------------------------------------------------------------------ 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/ ------------------------------------------------------------------------ CNCL 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. 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: - Sparc - sparc-sunos-4.1.3 - Linux Compilers: - Gnu CC Added : 01/01/95 Amended : 01/01/95 Licencing : GNU copyleft Author:Martin Junius FTP from ftp://ftp.dfv.rwth-aachen.de/pub/CNCL Email:mj@dfv.rwth-aachen.de Postal address:Communication Networks, Aachen University of Technology, D-52056 Aachen, Germany ------------------------------------------------------------------------ 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 ------------------------------------------------------------------------ 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 ------------------------------------------------------------------------ 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. FTP from ftp://ftp.demon.co.uk/pub/trumphurst/toolkit/ WWW http://www.trmphrst.demon.co.uk/toolkit.html 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 ------------------------------------------------------------------------ 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, image filtration, lazy image, C++, class library Operating Systems: - Solaris - HP 9000 - rs6000-aix-3.2 - Dec Alpha - FreeBSD - 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 FTP from ftp://replicant.csci.unt.edu/pub/oleg/grayimage-21.cpt.hqx - Mac distribution FTP from ftp://replicant.csci.unt.edu/pub/oleg/image.README.txt - README (ftp) FTP from ftp://replicant.csci.unt.edu/pub/oleg/image_v21.shar WWW http://mozart.compsci.com/~oleg/ftp/image.README.txt - README (Web) Email:oleg@ponder.csci.unt.edu ------------------------------------------------------------------------ Hans Boehms GC - Hans Boehms free Garbage Collector Implements much of the Detlefs/Ellis C++ GC proposal. Added : 01/01/95 Amended : 01/01/95 Licencing : Not known FTP from ftp://ftp.parc.xerox.com/pub/gc ------------------------------------------------------------------------ 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 ------------------------------------------------------------------------ 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/ ------------------------------------------------------------------------ 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://replicant.csci.unt.edu/pub/oleg/LinAlg.cpt.hqx - Mac version FTP from ftp://replicant.csci.unt.edu/pub/oleg/LinAlg.shar - Unix version FTP from ftp://netlib.att.com/netlib/c++/lin_alg.shar.Z WWW http://mozart.compsci.com/~oleg/ftp/LinAlg.README.txt - README file Email:oleg@ponder.csci.unt.edu ------------------------------------------------------------------------ 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
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 ------------------------------------------------------------------------ Tools for C++ Programmers ~~~~~~~~~~~~~~~~~~~~~~~~ Cback - Cfront optimiser Cback optimizes C source from the cfront C++ translator to create easy to read, smaller, faster and portable C source, while maintaining or improving compile times Improves run-time performance by: - Minimizing object code size (especially in debug) - Minimizing cfront output code size - Simplifying cfront data structures and expressions Improves programmer productivity with: - Easier to read C source from cfront output - Portable C source from cfront output - Faster link times, reducing the debug cycle - Seamless integration into existing compile paths - Availability on a broad range of Unix platforms Added : 01/01/95 Amended : 01/01/95 Licencing : Not known Fax:303.416.0753 Fax:508.454.7559 Email:al@newcode.com Email:zeev@newcode.com Email:info@newcode.com Postal address:Western Office: NewCode Technology, Inc., 2406 Newport Court, Fort Collins, CO 80526 Postal address: Eastern Office:NewCode Technology, Inc., 650 Suffolk Street, Lowell, MA 01854 Tel:Corporate HQ: 1.800.NEWCODE (1.800.639.2633) Tel:303.416.0784 Tel:508.454.7255 ------------------------------------------------------------------------ Classdoc - AWK package to produce documentation from C++ source Dag Bruck has written this package in AWK. It produces UNIX-style manual pages from C++ class headers. If you are interested in automatic documentation, you might want to look at this. Added : 08/02/96 Amended : 08/02/96 Licencing : Not known Email:dag@control.lth.se - Mail Dag Bruck ------------------------------------------------------------------------ DocClass - Generates class documentation from source files Docclass is a simple C++ program which reads in C++ header files, and outputs documentation describing the class hierarchy, methods, inherited methods etc. Docclass has a rather dumb parser, but it should cope with reasonably sane C++ class declarations. It understands comments, and tries to group the comments with the appropriate class or method. Docclass does not require templates, or nested classes, as many people had C++ compilers which didn't support them. With any luck, it should understand them a little in the code it analyses, though. Docclass is Copyright (c) Trumphurst Ltd. I have made it available on the Internet for personal use only. Please do not use it in a commercial situation (except for testing to see if it is suitable) without first obtaining permission (mail address below). Operating Systems: - Unix - PC DOS Compilers: - Borland C++ - Zortech C++ - Gnu CC Added : 08/02/96 Amended : 08/02/96 Licencing : Copyrighted freeware FTP from ftp://ftp.demon.co.uk/pub/trumphurst/docclass/docclass.txt - Text description FTP from ftp://ftp.demon.co.uk/pub/trumphurst/docclass/docclass.tar.Z - Unix version FTP from ftp://ftp.demon.co.uk/pub/trumphurst/docclass/docclass.zip - DOS version WWW http://www.ashmount.com/trumphurst/docclass.htm - DocClass Web page Email:docclass@trmphrst.demon.co.uk - Mail the author ------------------------------------------------------------------------ Libraries with no known FTP site ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Algebra - Equation editor Object classes to represent/edit algebric equations in Windows: number, literal, boolean, + and - infinite, indeterminations group, document, line, page, list, sum, negation, division,multiplication, root, raise, equal, lessThan, lessThanOrEqual etc..., equivalent, implication. Implementing: log,exp,sin,cos,tg,cotg,cos,asin,acos,atg, logic operators, etc... The author says: At this moment I've just implemented the simplification rules and I'm writing some rules for it. I'm available for some colaboration in this area. I need some opinions, sujestions, testers, colaboration. The idea is to get some interest from other Algebra and Mathematic areas (solvers by example) so they can benefit from the graphical interface. I'm available for modifications and customization to other classes in order to build virtually ANY editor. Operating Systems: - PC Windows 3 Compilers: - Borland C++ 4.0 Added : 28/03/96 Amended : 28/03/96 Licencing : Non commercial Email:np26hb@mail.telepac.pt - Rui H F Azevedo ------------------------------------------------------------------------ DCE++ - A C++ API for Programming Distributed Systems DCE++ is a set of ANSI C++ classes that enable the rapid prototyping of distributed programs. The goal of DCE++ is to provide a platform independent C++ API to the significant components used in distributed computing. Namely: RPC, threads, Security and Naming across the widely used distributed computing platforms such as DCE, ONC and WNT. It is expected that by encapsulating platform dependencies inherent in setting up rpcs, security etc. in DCE++ base classes, program development time can be drastically reduced. Moreover, a foundation can be provided for developing *portable* distributed program development tools. The second *evaluation* version of DCE++, version 0.4, has been released on Dec 2'93. The release includes C++ bindings for remote procedure calls over DCE and ONC. A C++ threads api for programming DCE threads. A C++ threads api for programming DCE distributed Time Service. The release is available free of charge upon signing a very liberal license agreement. The license agreement is obtainable by anonymous ftp from hal.com. It is in the directory dce++. The same directory also contains the release notes for the 0.4 version and plans for 0.5 features. To obtain the code, please send the signed license agreement to: Added : 01/01/95 Amended : 01/01/95 Licencing : Copyright (other) Author:William Leddy, Arjun Khanna Fax:512-794-8737 FTP from ftp://hal.com/dce++/ Email:arjun@hal.com Postal address:HaL Computer Systems, Austin, Texas ------------------------------------------------------------------------ GenTools - A Computational Genomic Tool Suite The University of Texas System CHPC and collaborators are addressing the problems of high performance platforms by developing GenTools, an interactive, distributed, loosely integrated, set of tools for DNA and protein sequence data analysis, phylogenetic analysis, and restriction mapping which combines different algorithm implementations, machines, and databases through a "bio-user" friendly set of graphical user interfaces. Added : 01/01/95 Amended : 01/01/95 Licencing : Not known Fax:(512)471-2445 Email:sarah@chpc.utexas.edu Postal address:Sarah Barron, GenTools Project Leader, Computational Molecular Biology and Genetics Group, University of Texas System Center for High Performance Computing, Balcones Research Center, CMS 1.154, 10100 Burnet Road, Austin, TX 78758-4497 Tel:(512)471-2434 ------------------------------------------------------------------------ Source code from books ~~~~~~~~~~~~~~~~~~~~~ Bruce Eckel - Thinking in C++ eckelt03.zip contains the source code for Bruce Eckel's book "Thinking in C++" (Prentice-Hall 1995, ISBN: 0-13-917709-4). This is the complete set of source code files from the book, including corrections after the book was published. The package only contains ASCII text files. They were prepared and tested with a number of compilers under DOS/Windows, and are intended to represent the correct language implementation at the time of their creation, rather than a particular compiler. However, please be aware that the C++ language is still a draft standard, and some language elements are still subject to small changes. The package is distributed as copyrighted freeware (you can use the code, and redistribute the package, but you cannot distribute modified versions of the package or portions of the package). Special requirements: Compressed from the original DOS directory structure using PKZIP 2.04g. When you unzip the package, use the -d flag to create directories and maintain the directory structure. Changes: Includes errata sheets for the first printing of the book (corrected in the second printing). eckelt03.zip has replaced eckelt01.zip (distributed on CIS & AOL). Copyrighted FreeWare. Uploaded by the author, Bruce Eckel . Operating Systems: - PC DOS - PC Windows 3 Added : 01/01/95 Amended : 01/01/95 Licencing : Copyrighted freeware Author:Bruce Eckel FTP from ftp://oak.oakland.edu/SimTel/msdos/cpluspls/eckelt03.zip Email:eckel@aol.com ------------------------------------------------------------------------ Coplien - Advanced C++ Programming Styles and Idioms Code from "Advanced C++ Programming Styles and Idioms" by James O. Coplien, Addison-Wesley, 1992, ISBN Added : 01/01/95 Amended : 01/01/95 Licencing : Not known FTP from ftp://netlib.att.com/netlib/c++/idioms ------------------------------------------------------------------------ Hansen - C++ Answers book Code from "The C++ Answer Book" by Tony L. Hansen , Addison-Wesley, 1990, ISBN 0-302-11497-6 Added : 01/01/95 Amended : 01/01/95 Licencing : Not known FTP from ftp://netlib.att.com/netlib/c++/answerbook ------------------------------------------------------------------------ Smith - Object Oriented Software in C++ Source to the Book by Michael A. Smith "Object-Oriented Software in C++", Chapman & Hall, London. 1993. ISBN 0 412 55380 5. Added : 01/01/95 Amended : 09/02/96 Licencing : Not known FTP from ftp://unix.brighton.ac.uk/pub/mas Email:mas@unix.brighton.ac.uk ------------------------------------------------------------------------ Other places to look for details of C++ libraries ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ASSET ASSET is currently populating a library of reusable components and systems, and documents on software reuse, called the Worldwide Software Reuse Discovery library (WSRD, pronounced "wizard"). Included are assets in numerous languages including C++, C, and Ada. Added : 01/01/95 Amended : 01/01/95 Licencing : Not known WWW http://source.asset.com/ Email:info@source.asset.com Email:theeke@source.asset.com Postal address:Obtaining an ASSET account or accessing the WSRD library: ASSET Attn: Account Administrator P.O. Box 3305 1350 Earl L. Core Rd. Morgantown, WV 26505 Postal address:Supplying products & advertisements: ASSET Attn: Patrick A. Theeke P.O. Box 3305 1350 Earl L. Core Rd. Morgantown, WV 26505 Tel:(304) 284-9000 Tel:(304) 284-9000 ------------------------------------------------------------------------ comp.object FAQ Added : 01/01/95 Amended : 01/01/95 FTP from ftp://rtfm.mit.edu/pub/usenet-by-group/comp.object/ Newsgroup:comp.object ------------------------------------------------------------------------ comp.windows.misc - Portable GUI-software FAQ Added : 01/01/95 Amended : 01/01/95 FTP from ftp://rtfm.mit.edu/pub/usenet-by-group/comp.windows.misc/ Newsgroup:comp.windows.misc ------------------------------------------------------------------------ ftp.th.darmstadt.de Added : 01/01/95 Amended : 01/01/95 FTP from ftp:ftp.th-darmstadt.de/pub/programming/languages/C++/c++-products/ ------------------------------------------------------------------------ numcomp-free-c.gz The index of resources for numerical computation in C or C++. Added : 01/01/95 Amended : 01/01/95 FTP from ftp://usc.edu/pub/C-numanal/numcomp-free-c.gz ------------------------------------------------------------------------ Useful ftp sites ~~~~~~~~~~~~~~~ Current CUG Library Catalog The CUG CD-ROM file listing offers the most comprehensive look at the programming tools and utilities available from CUG. The complete annotated listing (about 1 megabyte) is available through anonymous ftp as follows: Added : 01/01/95 Amended : 01/01/95 Licencing : Not known FTP from ftp://cdrom.com//pub/cdrom/cdroms/cug/capsule.txt ------------------------------------------------------------------------ ftp.luth.se Added : 01/01/95 Amended : 01/01/95 FTP from ftp://ftp.luth.se/pub/languages/c++/ClassLibs/ ------------------------------------------------------------------------ ftp.th.darmstadt.de A major repository of C++ stuff, mostly under the directory tree starting at /pub/programming/languages/C++. Includes a product list (from which some of the information in this document was taken) in various formats in sub-directory c++-products. Added : 01/01/95 Amended : 01/01/95 FTP from ftp://ftp.th-darmstadt.de/pub/programming/languages/C++/ ------------------------------------------------------------------------ FTP/Mail gateways - Obtaining FTP files via email If you don't have ftp access, send email to ftpmail@decwrl.dec.com saying "help". You will get instructions on how to do ftp via email. European users might like to try ftpmail@grasp.insa-lyon.fr instead. Added : 01/01/95 Amended : 28/03/96 Email:ftpmail@grasp.insa-lyon.fr Email:ftpmail@decwrl.dec.com ------------------------------------------------------------------------ Netlib - research.att.com has email, ftp - ornl.gov has email, xnetlib - nac.no has email, xnetlib for Europe - unix.hensa.ac.uk is a mail server useful for Europe. - ci.cs.uow.edu.au (130.130.64.3) in Australia E.g. send email to netlib@ornl.gov to access by email. This is a mail server. Send mail with the text "send index" or "send index from C++" Added : 01/01/95 Amended : 01/01/95 Email:netlib@nac.no Email:netlib@ornl.gov Email:netlib@research.att.com ------------------------------------------------------------------------ Simtel The primary Simtel site is simtel.net, but there are many mirror sites all over the world. Added : 01/01/95 Amended : 28/03/96 FTP from ftp://ftp.simtel.net/pub/simtelnet/msdos/cplusplus/ ------------------------------------------------------------------------ Source code newsgroups ftp.uu.net (e.g. usenet/comp.sources.reviewed archives the comp.sources.reviewed newsgroup). Added : 01/01/95 Amended : 01/01/95 FTP from ftp://ftp.uu.net/usenet/ ------------------------------------------------------------------------ Commercial libraries (A-N) ~~~~~~~~~~~~~~~~~~~~~~~~~ Aspect This is a C library, though they're type safe for C++ compatibility. A GUI builder is provided with the library. They're coming out with a C++ class library soon. Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial Fax:(719)576-3835 Postal address:OPEN Inc., 655 Southpointe Court, Suite 200, Colorado Springs, CO 80906 Tel:(719)527-9700 ------------------------------------------------------------------------ Booch Components Rational markets the C++ Booch objects which are a somewhat bizarre, but possibly quite innovative, set of library objects. It appears quite complete (unless you have some specific, uncommon needs); Booch may have an edge in supporting concurrency. USL may have more installations and greater maturity. Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial Tel:408-496-3700 ------------------------------------------------------------------------ C++ Data Object Library - Data structures combined with automatic persistence C++ Data Object Library has a wide variety of data structures combined with automatic persistence (storage to disk). In many applications, using the library is like building your own OO database. The emphasis is on high performance and protection against allocation and pointer errors. The library can help practically any C++ project, but is especially useful for large and complex software projects designs such as VLSI CAD. Uses a code generator. Data relations are represented as objects. Protection against pointer errors is achieved by using rings instead of NULL ending lists. Smart iterators permit to delete objects while travering lists. Several methods of storing data to disk, including memory blasting (storing entire pages of memory). Portable programs and data, schema migration. Data organizations: lists, collections, aggregates, trees, graphs, dynamic arrays, hash tables, pointer links, reference counting, many-to-many relation, dynamic properties (like in LISP), virtual (disk access is if a large array), run-time access to type tables. The library is build on ideas described in "Taming C++: Pattern Classes and Persistence for Large Projects", by Jiri Soukup, Addison-Wesley 1994. Sells in full source, and runs with all major compilers. A C version with similar features but with a less elegant interface is also available. No licence restrictions and no marketing tricks. You can ship the source of the library with your programs, except for the code generator. A complete regression test, documentation and support comes with the basic price. We are one of the oldest class libraries in business, and we stand behind our software. Prices in US$: $299 DOS,WINDOWS, or MAC $599 UNIX workstations Postage included in North America, $25 for overseas. Operating Systems: - Unix - PC Windows - OS/2 - Mac Compilers: - Sun CC - HP C++ - Cfront - Borland C++ - Visual C++ - Zortech C++ 3.0 - Watcom C++ - Gnu CC - Dec CC Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial Fax:613-838-3316 Email:jiri@debra.dgbt.doc.ca Postal address:Code Farms Inc 7214 Jock Trail, Richmond, Ont., K0A 2Z0, Canada Tel:613-838-4829 ------------------------------------------------------------------------ C++/Views 3.0.5 Cross-platform C++ class library designed for use by experienced commercial C++ developers. Originally written in Smalltalk, it was rewritten in C++ to provide greater performance and also to appeal to a greater number of developers. Includes the following features; - Cross-platform object-browser - GUI Painter - Portable Resource Files - Persistent Object Support - Fully portable Available on a per user, per platform basis, $995. Full support is available. Operating Systems: - PC Windows - PC 32-bit Windows - OS/2 - Motif Compilers: - Visual C++ - Borland C++ - Symantec C++ - IBM Cset++ - Sparcworks Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial Fax:+44 (0)1727 869 804 Fax:301 838 5064 WWW http://www.intersolv.com Email:idsinfo@intersolv.com Email:peter_ambrose@intersolv.com Postal address:Europe: INTERSOLV, Ltd Abbey View Everard Close St Albans, Herts AL1 2PS Postal address:USA/CANADA: INTERSOLV, Inc. 9420 Key West Avenue Rockville MD 20850 Tel:+44 (0)1727 812 812 Tel:800 547 4000 ------------------------------------------------------------------------ Classix In addition to Rogue Wave, Empathy offers a good general-purpose library called Classix. I do not have confirmed information, but I have been told that this library is no longer available. Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial Fax:(503) 757-6650 Email:info@roguewave.com Postal address:Rogue Wave Software, Inc., 1325 NW 9th Street, Corvallis, OR, 97330 Tel:(503) 754-2311 ------------------------------------------------------------------------ CommonPoint Application System - Comprehensive C++ class library for writing portable GUI applications It includes a GUI builder, a development environment, full international language support, full 2D and 3D graphics, multi-media, collection classes, customizable text and graphics editors, a compound document architecture, a workspace/finder, etc.. It is fully supported. Future versions will run on additional platforms. Operating Systems: - IBM AIX Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial WWW http://www.taligent.com/ Postal address:Taligent, Inc., Cupertino, CA ------------------------------------------------------------------------ CommonView - Iconic user interface from Glockenspiel This is a C++ UI library. In addition, it comes with container classes. The down-side is that some of the features are not supported across all platforms. Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial Fax:(516) 342-6947 Postal address:Computer Associates International, One CA Plaza, Islandia, NY 11788 Tel:(516) 342-2308 ------------------------------------------------------------------------ CP Graphics - CP Graphics Library for Windows Library features include: - Bitmap and DIB functions for loading, saving, scaling, displaying, copying and printing - Multimedia support for WAV, MID, FLC and AVI - Animation - transparent 'put' and sprite animation - Sound - Palette manipulation - Clipboard - High-level drawing functions CPDEMO.EXE shows the user interface created with CP Graphics Library: animated buttons, region buttons, frames and other features. To find out more or to download the demo or free Windows screen saver please visit the Web site below, or send an e-mail message. Operating Systems: - PC Windows Added : 14/03/96 Amended : 14/03/96 Licencing : Commercial Fax:+61 8 396 1477, +61 8 262 8130 WWW http://www.tne.net.au/cp Email:adavidovic@nexus.edu.au - Technical support Email:cp@tne.net.au Postal address:Computer Point, 71 Williamson Road, Para Hills 5096, South Australia Tel:+61 8 263 3623, +61 8 262 7751 ------------------------------------------------------------------------ Crusher! - Data Compression Toolkits The Crusher! Data Compression Toolkits are high-performance, portable data compression libraries. Crusher's comprehensive API of 45+ functions, identical across all platforms, provides buffer compression, file compression, archiving, subdirectory support, wildcards, disk spanning, encryption, self-extracting EXE's and more. Typical results compresses data to 20-50% of their original size or less. Implement full archiving in just four function calls. Crusher archives are portable across all supported platforms and full source code is included, as well as numerous sample applications. Includes ARQ.EXE, a convenient command-line utility for managing Crusher archives, and SETUP, a Windows installation/setup program. Supports all C/C++ memory models and languages such as Visual Basic and Delphi. Windows versions include VBX and OCX custom controls and full on-line documentation. Limited 30-day warranty. A free demo is available for downloading from our bbs or web site. Retail Platform Pricing (all prices are in U.S. dollar and include full C source code): - DOS $249 - 16-bit Windows $299 - 32-bit Windows $299 - Macintosh $299 - OS/2 $349 - Unix $349 Operating Systems: - PC DOS - PC Windows - PC 32-bit Windows - OS/2 - Unisys Unixware - Mac Compilers: - Borland C++ - Visual C++ - Watcom C++ - Symantec C++ Added : 05/02/96 Amended : 05/02/96 Licencing : Commercial BBS:606-268-1251 Fax:606-266-0726 WWW http://www.dcmicro.com Email:info@dcmicro.com Postal address:DC Micro Development, P.O. Box 54588, Lexington, KY 40555 Tel:606-268-1559 Tel:800-775-1073 ------------------------------------------------------------------------ DiaViews++ Class library for the development of graphical user interfaces (GUI) in OSF/Motif and C++ This library combines the power of the OSF/Motif toolkit with the advantages of the C++ language by means of completely encapsulating the Motif objects (widgets/gadgets). This means there is a C++ class for every Motif object. DiaViews supports the structured, object-oriented development of Motif interfaces. C++ features such as rigorous type checks and virtual functions, etc. enhance the efficiency of the development process. Advantages: - Uniform C++ interface with OSF/Motif - Framework for generating reusable UI components - Use of callback objects - Interface with Dialog Builder, the interactive tool from Siemens Nixdorf for OSF/Motif user interfaces - Simple and reliable handling of Motif resources - Automatic generation of make- files - Minimal training overhead Price for source license (all platforms): 1200 DM, ~800 US$ Academic or private use license: 300 DM, ~200 US$ (needs Generic++) Added : 01/01/95 Amended : 28/02/96 Licencing : Commercial Fax:(49) 89 893242-31 Email:info@ootec.isar.de Postal address:Alexander v. Zitzewitz, OO-Tec GmbH, Muenchener Strasse 45, D-82131 Gauting, W. Germany Tel:(49) 89 893242-0 ------------------------------------------------------------------------ Distinct TCP/IP - TCP/IP for Windows Software Development Kit C++ Class Libraries for FTP, Telnet and Windows Sockets. Allows developers to develop TCP/IP applications without making calls directly to a C Dynamic Link Library (DLL). Applications are created using the Distinct C++ Class Libraries, which take care of establishing the connection between the client and server side of the application. All functionality normally associated with calling a TCP/IP application is taken care of by setting data members and by handling upcall events. Applications are notified of errors, connection changes and incoming data by an upcall posted by the library to the applications window, by providing a callback function to the library or by making polling calls to the library at frequent intervals. Standard Edition:$495.00 Professional Edition:$695.00 Distinct TCP/IP Run Time: $100.00 Compilers: - Visual C++ Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial Fax:(408) 366-2101 Email:mktg@distinct.com Postal address:Distinct Corporation, 12901 Saratoga Avenue, #4, Saratoga, CA 95070 Tel:(408) 366-8933 ------------------------------------------------------------------------ DV Centro - C++ graphics framework for building visual language applications DV-Centro provides robust graphics, event management and utilities for efficiently developing applications that use non-textual interfaces. Visual language interfaces allow programming through manipulation of graphic objects. By overlaying, juxtaposing or inter- connecting graphic objects, a user can interact and manipulate the application. DV-Centro is designed for creating applications such as graphical editors and visual language applications - like diagram editors, finite state machine editors, simulation and control systems, etc. It provides: - graphics classes: primitives (line, point, circle etc.), rendering (Motif, Windows, Postscript), automatic damage repair, properties (color, fill, line styles etc.), transformations (rotation, scaling, translation) - graphical constraint management for graphical connectivity and containment. For example, keeping lines connected to boxes while editing a diagram. - event handling classes for platform-independent definition of events, states and responses used to define how the system behaves. - mechanisms for graphical editing (n-level undo/redo, copy/cut/paste, save/restore etc.) - utilities: run-time type checking, memory management - classes to link data to graphics so you have "smart diagrams" - Python bindings to Centro for rapid development without long C++ compile times Operating Systems: - SunOS - Solaris - HP UX - PC 32-bit Windows Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial Fax:413-586-3805 WWW http://www.dvcorp.com Email:info@dvcorp.com Postal address:DataViews Corporation 47 Pleasant Street Northampton, MA 01060 Tel:413-586-4414 ------------------------------------------------------------------------ fACTs++ Class Library - Financial Application Construction Tools in C++ A homogeneous tool-box of more than 300 C++ classes and templates. fACTs++ provides programmers with design patterns for distributed client-server applications supporting multi-currency securities and transactions, along with associated international conventions. The library includes a complete set of foundation classes, parallel processing and communication classes, extendible financial instrument hierarchy and financial modeling classes. fACTs++ features include: - Dynamic Object Type Identification with Smart Pointers - Streams Interface - Container Templates - Time, Date, Calendar and Timer classes - String and Regexp Classes - Mathematics and Financial Modeling Classes - Internationalization Support - Interface To Persistence Storage and Extendible Objects - Application Configuration Framework - Human-Computer Interface Tools, including Model-Viewer Controller Classes - Distributed Processing Primitives and Client-Server Framework - CashValue, CashFlow, Payment, Yield and DayCount, Market classes - Comprehensive and extendible set of instrument definitions, such as Swap, Bond, Basket and Derivative - Portfolio, Position and Transaction Classes - Yield Curve, Volatility and Time Series Classes fACTs++ is available, on a per-project basis, as part of Objective Edge's custom software engineering service. The company's training program allows clients to quickly "ramp-up" their object-oriented development projects, providing early, visible results while reducing development costs. Upon project completion, clients are left with a technology base and application architecture which they are able to leverage in future development activities. fACTs++ is currently supported on Solaris 2.X and x86, and may be ported to any POSIX compliant platform on a custom development basis. fACTs++ is a trademarks of Objective Edge Inc. Copyright(c) 1994, 1995 Objective Edge Inc. All rights Reserved. Operating Systems: - Solaris Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial Fax:416-485-6473 WWW http://www.objectiveEdge.com/ Email:info@objectiveEdge.com Postal address:Objective Edge Inc. Suite 401, 194 Merton Street Toronto, Canada M4S 1A1 Tel:416-485-7186 ------------------------------------------------------------------------ G-BASE/GTX (MATISSE) - Object Oriented Database Contact: Christina Bernard, Marketing and Communications Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial Fax:(617) 547-5420 Email:info@odb.com Postal address:ODB, an Intellitic Intl Co., 238 Broadway, Cambridge, MA 02139 Tel:(617) 354-4220 ------------------------------------------------------------------------ Galaxy This is a C UI library, but it's written in an object-oriented style and is type safe for C++ use. The package includes a WYSIWYG GUI builder. The tools are, reportedly, pretty full-featured. User-interface items have extensive abstraction (for example, they have a confirmation-type dialog that resolves to a push-pin and 'apply' button under openlook, but 'ok', 'apply', 'cancel' buttons under motif). Objects can be positioned relative to each other (rather than merely absolute position on the screen). Also, errors are handled with an abstract exception handling framework. They support internationalization of fonts (at least Japanese), money, and data formatting. Some extra-cool features include memory leak detection and C-language objects for text (multi-styled, multi-font text with embedded graphics), list (spreadsheet-like for handling up to 2^31 x 2^31 cells with customizable displays), and graphics processing. Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial Fax:(703) 758-2711 Email:galaxy@visix.com Postal address:Visix, 11440 Commerce Park Drive, Reston, Virginia 22091 Tel:(800) 832-8668 ------------------------------------------------------------------------ GEMSTONE Object Oriented Database Briefly, GemStone is a full featured OODBMS with transaction control, multiple users, multiple platforms supported, client server architecture, active objects (ie, behavior can occur in the database as well as in the application using it), multiple language support, etc. GemStone is actually quite a bit more than just a data repository - it is a full-fledged DBMS that is pure OO. You can access the same database just as easily from C, C++, or SmallTalk, or you can build entire database applications inside the database server, because it is an active server that runs methods written in our DML, OPAL, which is a dialect of SmallTalk. There are also high-level tools to aid application building. Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial Fax:510-814-6227 Email:marcs@slc.com Postal address:UK Office:, Servio-UK Ltd, Criterion House, Beauchamp Court, Victors Way, Barnet, EN5 5TZ, England Postal address:Servio Corporation, 950 Marina Village Parkway, Suite 110, Alameda CA 94501 Tel:(181) 447-0800 Tel:800-243-9369 Tel:510-814-6200 ------------------------------------------------------------------------ Generic++ Class library with container classes and basic data types for the development of portable, object-oriented applications. Actually (Feb 96) won the readers choice award of "Objekt Spektrum", which is a German SIGS publication. This C++ library is completely new. It is aimed at commercial users and implements a generous selection of application-independent basic classes. Its use frees the user from error-prone and time-consuming specific tasks (e.g. main memory management). All libraries previously available on the market are targeted more or less specifically on a particular system environment. However, it is becoming more and more urgent to make as many application modules as possible independent of a specific target platform. What gives Generic++ its competitive edge is the portability of its components and the way it takes account of other software engineering aspects. Advantages: - Implementation of the most important application- independent basic classes - Availability on all standard operating systems and platforms - Accommodation of the latest C++ extensions such as templates and exception handling - Co-existence with other libraries - High degree of runtime efficiency and low resource consumption - Integrated debugging support - Template-based, typesafe container classes with interchangeable implementation data structures - Smart cursors - Suitability for use in the development of client/server applications in heterogeneous networks. - Support for multi-threaded applications - Persistent objects - Regular expressions - System independent handling of file and path names Price for source license (all platforms): 947 DM, ~610 US$ Academic or private use license: 300 DM, ~200 US$ Operating Systems: - Unix - PC Windows NT - OS/2 - PC Windows - PC DOS Compilers: - Cfront - IBM xlC - Watcom C++ - IBM Cset++ - Borland C++ - Symantec C++ Added : 01/01/95 Amended : 28/02/96 Licencing : Commercial Fax:(49) 89 893242-31 Email:info@ootec.isar.de Postal address:Alexander v. Zitzewitz, OO-Tec GmbH, Muenchener Strasse 45, D-82131 Gauting, W. Germany Tel:(49) 89 893242-0 ------------------------------------------------------------------------ Greenleaf ArchiveLib - C/C++ library for data compression/archiving Greenleaf ArchiveLib provides the developer a set of classes and functions to compress and store ASCII and binary data into an archive for storage, as well as to retrieve and expand the stored data from the archive. Features include: PKZip 2.0x archive support - insert, extract, delete, list and more 3 compress and decompress engines: PKZip 2.0x compatible Greenleaf engine: lossless, dictionary-based Copy engine as alternative for small files Portable data compression engines are fast and efficient Progress meter & message classes Functions to add, replace, delete, update and retrieve objects of compressed data within the archive The price is $279 and this includes full source code. There are no royalties when distributed in executable format. Operating Systems: - PC DOS - PC Windows - PC 32-bit Windows - OS/2 Compilers: - Visual C++ - Borland C++ - Symantec C++ - Watcom C++ - IBM Cset++ Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial BBS:(214)250-3778 Fax:(214)248-7830 WWW http://www.gleaf.com/~gleaf.com Email:info@gleaf.com Postal address:Greenleaf Software, Inc. 16479 Dallas Pkwy. STE 570 Dallas, TX 75248 Tel:(800)523-9830 Tel:(214)248-2561 ------------------------------------------------------------------------ Greenleaf Comm++ Comm++ is an synchronous RS-232 communications library that provides interrupt-driven, circular buffered service for 35 ports at baud rates to 115,200 baud. Classes are provided for: serial port controls, modem controls, file transfer protocols and calculation of check values. Features include: XMODEM, YMODEM, ZMODEM, CompuServe B+, Kermit and ANSI file transfer support XON/XOFF, RTS/CTS flow control Support for Novell's NASI interface VT52 and VT100 (subset) terminal emulation support 286/386 Dos extender support The price is $279 and this includes full source code. There are no royalties when distributed in executable format. (214)248-2561 (800)523-9830 (214)248-7830 FAX (214)250-3778 BBS http:\\www.gleaf.com\~gleaf.com email: info@gleaf.com Operating Systems: - PC DOS - PC Windows - PC 32-bit Windows - OS/2 Compilers: - Visual C++ - Borland C++ - Symantec C++ - Watcom C++ - IBM Cset++ Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial BBS:(214)250-3778 Fax:(214)248-7830 WWW http://www.gleaf.com/~gleaf.com Email:info@gleaf.com Postal address:Greenleaf Software, Inc. 16479 Dallas Pkwy. STE 570 Dallas, TX 75248 Tel:(800)523-9830 Tel:(214)248-2561 ------------------------------------------------------------------------ Guild This is a C-language UI library, but they're type-safe for C++ compatibility. The package includes a GUI builder and an event occurrence monitor. Additional features in the library includes support for international character sets, portable file system support and nifty C-language classes for pie-charts, 3d bars, x-y plots, and the like. OPTIONS: - Graphic Modeling $995 - Oracle Database Bridge $395 - ODBC Database Access $495 Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial Fax:(415) 349-4908 Postal address:Guild, 1710 S. Amphlett, 2nd Fl., San Mateo, California 94402 Tel:(415) 513-6650 ------------------------------------------------------------------------ ICpak101, ICpak201 Stepstone Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial ------------------------------------------------------------------------ IDB - Object Databases Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial Fax:412-963-1843 Postal address:Persistent Data Systems, P.O. box 38415, Pittsburgh, PA 15238-9929 Tel:412-963-1846 ------------------------------------------------------------------------ ILOG BROKER - Distributed Object Computing ILOG BROKER: C++ library and preprocessor that extend the C++ language to transparently support Distributed Object Computing environments. Developers can make any existing linked C++ application distributed, by minimally changing their header files. A set of about 15 keywords enable ILOG BROKER's preprocessor to generate standard C++ code. Once the header files have been annotated, the preprocessor automatically generates the C++ source code to build the distributed application. Communication between objects is performed through the use of local surrogates calling methods on the real implementation objects across a network. The current implementation relies on RPC for the transportation layer. ILOG BROKER annotations have also been designed to generate IDL code for CORBA 2 specifications. ILOG BROKER does not impose the use of a dedicated server. Each object in the distributed application can be both a client and a server to and for other objects, therefore providing a true peer-to-peer programming tool. Cost: $5,000 per Unix-based development license. Preferred university rates available upon request. Operating Systems: - Dec OSF/1 - HP UX - IBM AIX - Silicon Graphics - Sun Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial Fax:+65 773 04 39 Fax:+33 1 4908 3510 Fax:+1 415-390-0946 WWW http://www.ilog.fr WWW http://www.ilog.fr Email:info@ilog.com.sg Email:info@ilog.fr Email:info@ilog.com Postal address:Asia: ILOG Pte Ltd., 02-05 Cintech Building, 3 Science Park Drive, SINGAPORE 118254 Postal address:Europe: ILOG SA, BP 85, 9 rue de Verdun, 94253 Gentilly Cedex, France Postal address:ILOG, Inc., 2005 Landings Drive, Mountain View, CA 94043, USA Tel:+65 773 06 26 Tel:+33 1 4908 3500 Tel:+1 415-390-9000 ------------------------------------------------------------------------ ILOG DB LINK - Connect RDBMS to C++ applications ILOG DB LINK: is a C++ library to connect RDBMS such as Sybase, Oracle, Ingres, Informix, or SQLBase to C++ applications. Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial Fax:+65 773 04 39 Fax:+33 1 4908 3510 Fax:+1 415-390-0946 WWW http://www.ilog.fr WWW http://www.ilog.fr Email:info@ilog.com.sg Email:info@ilog.fr Email:info@ilog.com Postal address:Asia: ILOG Pte Ltd., 02-05 Cintech Building, 3 Science Park Drive, SINGAPORE 118254 Postal address:Europe: ILOG SA, BP 85, 9 rue de Verdun, 94253 Gentilly Cedex, France Postal address:ILOG, Inc., 2005 Landings Drive, Mountain View, CA 94043, USA Tel:+65 773 06 26 Tel:+33 1 4908 3500 Tel:+1 415-390-9000 ------------------------------------------------------------------------ ILOG RULES - Data monitoring in real-time environments ILOG RULES: is a C++ tool for data monitoring in real-time environments. ILOG RULES embeddable inference engine applies rules directly on native C++ application objets. Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial Fax:+65 773 04 39 Fax:+33 1 4908 3510 Fax:+1 415-390-0946 WWW http://www.ilog.fr WWW http://www.ilog.fr Email:info@ilog.com.sg Email:info@ilog.fr Email:info@ilog.com Postal address:Asia: ILOG Pte Ltd., 02-05 Cintech Building, 3 Science Park Drive, SINGAPORE 118254 Postal address:Europe: ILOG SA, BP 85, 9 rue de Verdun, 94253 Gentilly Cedex, France Postal address:ILOG, Inc., 2005 Landings Drive, Mountain View, CA 94043, USA Tel:+65 773 06 26 Tel:+33 1 4908 3500 Tel:+1 415-390-9000 ------------------------------------------------------------------------ ILOG SERVER - C++ object server implementing real-time groupware applications ILOG SERVER is a C++ library and preprocessor for building reactive servers of C++ objects. It offers a client-independent external abstraction of the data, which ensures the coherence of the shared objects. Each client: - has its own API (Application Programming Interface) - only has to be concerned with the objects it manipulates - does not have to worry about other clients sharing the same objects ILOG SERVER is an extension of the SmallTalk Model View Controller (MVC) architecture to manipulate custom C++ objects instead of fundamental data types. Developers describe object models by annotating their header files using about 15 predefined keywords. Once the header files have been annotated, ILOG SERVER's C++ preprocessor automatically generates the appropriate C++ code. By extending the notion of a C++ pointer as a data member, ILOG SERVER makes it possible to easily build relationships with cardinalities between C++ classes that will automatically be maintained. This extension to C++ supports inheritance and relationships based on smart pointers. Cost: $5,000 per Unix-based development license. Preferred university rates available upon request. Demonstration CD-ROM available Operating Systems: - Dec OSF/1 - HP UX - IBM AIX - Silicon Graphics - Sun Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial Fax:+65 773 04 39 Fax:+33 1 4908 3510 Fax:+1 415-390-0946 WWW http://www.ilog.fr WWW http://www.ilog.fr Email:info@ilog.com.sg Email:info@ilog.fr Email:info@ilog.com Postal address:Asia: ILOG Pte Ltd., 02-05 Cintech Building, 3 Science Park Drive, SINGAPORE 118254 Postal address:Europe: ILOG SA, BP 85, 9 rue de Verdun, 94253 Gentilly Cedex, France Postal address:ILOG, Inc., 2005 Landings Drive, Mountain View, CA 94043, USA Tel:+65 773 06 26 Tel:+33 1 4908 3500 Tel:+1 415-390-9000 ------------------------------------------------------------------------ ILOG SOLVER - Constraint reasoning library ILOG SOLVER: is a C++ constraint reasoning library for solving complex resource management problems such as scheduling, configuration, and planning. ILOG SCHEDULE: is an add-on library to ILOG SOLVER dedicated to solving scheduling problems. Added : 01/01/95 Amended : 01/01/95 Licencing : Commercial Fax:+65 773 04 39 Fax:+33 1 4908 3510 Fax:+1 415-390-0946 WWW http://www.ilog.fr WWW http://www.ilog.fr Email:info@ilog.com.sg Email:info@ilog.fr Email:info@ilog.com Postal address:Asia: ILOG Pte Ltd., 02-05 Cintech Building, 3 Science Park Drive, SINGAPORE 118254 Postal address:Europe: ILOG SA, BP 85, 9 rue de Verdun, 94253 Gentilly Cedex, France Postal address:ILOG, Inc., 2005 Landings Drive, Mountain View, CA 94043, USA Tel:+65 773 06 26 Tel:+33 1 4908 3500 Tel:+1 415-390-9000 ------------------------------------------------------------------------ ILOG TALK - Object-oriented dynamic language ILOG TALK: is an object-oriented