Search the FAQ Archives

3 - A - B - C - D - E - F - G - H - I - J - K - L - M
N - O - P - Q - R - S - T - U - V - W - X - Y - Z - Internet FAQ Archives

comp.lang.objective-c FAQ, part 2/3: ClassWare Listing

[ Usenet FAQs | Web FAQs | Documents | RFC Index | Sex offenders ]
Archive-name: Objective-C/classes
Version: $Id: classes,v 3.42 1998/09/17 12:51:32 tiggr Exp $

See reader questions & answers on this topic! - Help others by sharing your knowledge

			     ClassWare Listing

This is the second of three FAQ postings for comp.lang.objective-c.  This
posting lists available kits and classes, to aid the reader in answering
the question `to re-use or to re-invent?'. In order to keep this list up
to date and as interesting and diverse as possible, send your additions,
deletions and suggestions to  (As you can conclude from
the state of this document, hardly anybody does and apparantly nobody

The available classes and kits are categorized as follows:

	Stepstone	Stepstone libraries,
			for use with Stepstone's environment
	FSF		FSF maintained/released classes
			for use with GNU CC

	Third Party	commercial classes

	    OS/2 Objective C class library
	    BPG Blocks
	    Objective-C Views	UI library for MS Windows
	    OBJECT:Math		extensible match and string handling
	    Store		OO user level virtual file system
	    DOME 3.0		distributed object management environment
	    Computer Algebra Kit	objects for multiprecision arithmetic
				[stepstone & portable object compiler]
	    Objective-Framework, Objective-Browser

	GPL		classes released under the GPL

	    objcX	[gnu]
	    Tcl/Objective-C Interface Library [gnu, nextstep]
	    libFoundation	(another) GPL implementation of FoundationKit
	    libtl	Tiggr's Objective-C Library [gnu, nextstep]

	Public Domain	public domain classes---no GPL

	    IconKit	[nextstep]
	    MiscKit	[nextstep / openstep]
	    MusicKit	[nextstep]
	    ObjectPak   collection class library
			[gnu, nextstep, stepstone, portable object compiler]


    Bundled with the compiler is ICpak 101 Foundation Class Library.  This
    library provides twenty classes and more than three hundred methods
    including such things as Collections (OrdCltn, Stack, Set, Dictionary,
    SortCltn), Arrays (IdArray, IntArray), String, Sequences, Automatic
    Object I/O (ASCII Filer), etc.

    The ICpak 201 Graphical User Interface library is used to build iconic
    multi window user interfaces for workstation applications.	The library
    consists of 58 classes and over 1,100 methods.  Classes include such
    things as Controllers, Menu's, Menu Items, Icons, Windows(StdLayer),
    Timers, Buttons, Text, etc, etc.  ICpak 201 is ported to X Windows,
    OpenWindows, Motif and SunView and provides a consistent user interface/
    look-and-feel between all platforms.


	The Stepstone Corporation
	75 Glen Road
	Sandy Hook, CT 06482
	tel: +1 203 426-1875
	fax: +1 203 270-0106
	telex: 506127



	Object is the root class which comes as part of the Objective-C
	runtime library provided with the GNU CC compiler.

    GNU Objective-C Class Library

	The GNU Objective C Class Library, version 0.1.19, is now available.

	What is the GNU Objective C Class Library?

	    It is a library of general-purpose, non-graphical Objective C
	    objects designed in the Smalltalk tradition.  It includes
	    collection objects for maintaining groups of objects and C
	    types, streams for I/O to various destinations, coders for
	    formating objects and C types to streams, ports for network
	    packet transmission, distributed objects (remote object
	    messaging), pseudo-random number generators, string handling,
	    and time handling facilities.

	Noteworthy changes since version `0.1.10'

	  * Now using `src', `config' and `doc' directories to un-clutter
	    the top-level directory.

	  * New GNUStep classes implemented: NSDictionary,
	    NSMutableDictionary; concrete classes NSGDictionary,
	    NSGMutableDictionary; enumeration classes
	    NSGDictionaryKeyEnumerator, NSGDictionaryObjectEnumerator.

	  * More methods in NSData are implemented, thanks to Albin Jones.

	  * More methods in NSString are implemented; we have new classes
	    NSCharacterSet and NSBitmapCharSet; all thanks to Adam Fedor.

	  * And several bug fixes.  See the ChangeLog for details.

	Where can you get it?  How can you compile it?

	    The library requires gcc 2.7.0 or higher.  The library does not
	    work with the NEXTSTEP 3.2 compiler because that version of
	    NeXT's cc cannot handle nested functions.  Until a later release
	    from NeXT, NEXTSTEP users will have to install gcc.  See the
	    `INSTALL' file for more instructions about compiling and
	    installing the library.

	    The library has been successfully compiled and tested with the
	    following configurations: mips-sgi-irix5.2

	    Some previous snapshots of the library worked with these
	    configurations, but they haven't been tested recently (We are
	    looking for a volunteer to write a test suite using dejagnu):
	    sparc-sun-sunos4.1.3, m68k-next-nextstep3.0, rs6000-ibm-aix3.2,
	    sparc-sun-solaris2.3, i386-unknown-linux, i386-sun-solaris2.4,
	    i386-unknown-sysv4.0, Ultrix 4.2, HP/UX 9.01.  It is known not
	    to work with: alpha-dec-osf

	    The `.tar' file is compressed with GNU gzip.  Gzip can be
	    obtained by anonymous ftp at any of the GNU archive sites.

	    For info about FTP via email, send email to
	    `' with no subject line, and two-line body
	    with line one `help' and line two `quit'.

	    The most recent (not necessarily tested) snapshots of the
	    library will be placed in `'.


            R. Andrew McCallum


	Free Software Foundation
	59 Temple Place -- Suite 330
	Boston, MA   02111

Third Party Kits

    OS/2 Objective C class library

	This visual development environment provides Objective C classes
	for most of the window classes provided by OS/2 PM.  Instead of
	writing ANSI C applications you can use the features provided by
	Objective C to create OS/2 applications using the Graphical User
	Interface Presentation Manager.

	Also included is a small library to simplify access to DBase III
	database files in your programs.

	The library, current version 0.8, is available as
	All documentation needed is included in Postscript format.


	    Thomas Baier
	    Center for Computational Intelligence
	    Technische Universitaet Wien
	    Resselgasse 3/CI
	    A-1040 Wien, Austria
	    Phone: +43-1-58801-4100

    Hot Technologies


	    BarCodeKit is a comprehensive collection of object palettes for
	    creating international standard bar codes.	BarCodeKit allows
	    both developers and organizations to quickly add bar coding to
	    custom NEXTSTEP applications.  By combining the power of object
	    orientation and PostScript into a comprehensive library of bar
	    code symbologies, BarCodeKit represents the state of the art in
	    bar code technology.  Developers can seamlessly add bar coding to
	    an existing application in a matter of minutes by using any of
	    the 35 pretested and reusable objects in the BarCodeKit library
	    of palettes.  Previously, adding bar coding to an application
	    meant weeks or months of development, incompatibility with
	    different bar code readers and the use of costly proprietary bar
	    code printers.

	    The BarCodeKit features a full range of bar code symbologies
	    including Code 3 of 9, Code 39 Extended, UPC-A, UPC-E, HRI, NDC,
	    ABC, FIM, BRM, Interleaved Two of Five, MSI, Codabar, Code 11,
	    Code 93, Code 128, Code 16K and Code 49.  It complies to
	    international, national, military and commercial bar coding
	    standards including EAN, JAN, CEN, ANSI, MIL, USS and HIBCC.
	    Furthermore, it provides developers with flexibility; bar codes
	    created using the kit can be scaled and rotated to fit a
	    specific area on a label or document and saved in EPS, EPSI (EPS
	    with interchange bitmap preview for non Display PostScript
	    computers), or TIFF formats.  BarCodeKit is an excellent
	    complement to NEXTSTEP's Application Kit and Database Kit It was
	    nominated for a Best of Breed Award by the editors of NeXTWORLD


	    SerialPortKit is a fundamental class library and palette that
	    makes communication with serial peripherals easy to add into
	    your custom NEXTSTEP applications without any of the drawbacks
	    of other solutions.	 You can use SerialPortKit to communicate
	    with a variety of serial peripherals such as modems, printers,
	    terminals, audio/video equipment, bar code readers, magnetic
	    stripe readers, controllers and data acquisition devices.  The
	    SerialPortKit contains a single SerialPort class which
	    interfaces to our SerialPortServer. Additional classes for
	    specific peripherals are available in our SerialPeripheralsKit
	    or through our consulting service.

	    You can easily incorporate the SerialPortKit into your custom
	    applications due to its professionally designed and truly
	    object-oriented programming interface. The included Interface
	    Builder palette, source code examples, on-line indexed reference
	    manuals and tutorial further removes the tedious task of
	    traditional serial port programming.  Requires SerialPortServer
	    or SerialPortServer Lite which are available also from Hot


	    Hot Technologies
	    75 Cambridge Parkway, Suite E-504
	    Cambridge, MA 02142-1238 USA
	    tel: + 1 617 252 0088
	    fax: + 1 617 876 8901
	    email: (NeXTmail)

    Berkeley Productivity Group


	    BPG BLOCKS is an open extensible manufacturing framework which
	    supports a variety of applications including factory definition,
	    real-time tracking, real-time scheduling, short-term planning,
	    shift scheduling, production planning and capacity analysis.
	    BPG BLOCKS creates a virtual reality which represents the real
	    factory including the people, machines, material, processes,
	    their dynamics and interactions.  BPG BLOCKS is based on an easy
	    to understand design where every software object represents
	    either a real-world entity, or an important concept in the
	    manufacturing domain.  BPG BLOCKS' object-oriented manufacturing
	    model mirrors the real world, captures numerous manufacturing
	    details accurately, supports commonly used abstractions, and
	    allows decisions to be made based on aggregate information.	 BPG
	    BLOCKS forms the basis for building custom applications which
	    meet the unique needs of your particular manufacturing

	Objective-C Views

	    Objective-C Views is a user interface class library for
	    Microsoft Windows.


	    Christopher Lozinski
	    35032 Maidstone Court
	    Newark, CA 94560
	    tel: +1 510 795-6086
	    fax: +1 510 795-8077

    OOAI - M. Onyschuk and Associates Inc.


	    PropertyListCoders offers an alternative to NSCoder, allowing
	    objects to be encoded to a human-readable property-list format
	    instead of NSCoder's binary form.

	    Adding support for PropertyListCoders in existing applications
	    is very straightforward, the syntax is both conceptually and
	    visually similar to the NSCoder system.  PLCoder based
	    documents can typically be added for many projects with the
	    inclusion of a few categories on existing classes.

	    PropertyListCoders produce documents that are easy to work with
	    and debug.  The system also allows datatypes to be stored in
	    their original format, which is commonly used to create
	    documents containing embedded links or images.

	Reorderable Matrix (MiniExample)

	    OAReorderableMatrix is a kind of Matrix whose rows and columns
	    are reorderable through an Alternate-click gesture.  Developers
	    can specify whether the matrix' cells are reorderable
	    vertically, horizontally, or both vertically and horizontally.


        M. Onyschuk and Associates Inc.
        tel: +1 416 598 1321
        fax: +1 416 598 1312

    Stream Technologies Inc.


	    Store is an Object Oriented User Level Virtual File System.
	    It is described extensively in `Store - Object Oriented Virtual
	    File System' by Timo Lehtinen, which is available by anonymous
	    FTP from


	    Stream Technologies Inc.
	    Valkj\"arventie 2
	    SF-02130 Espoo
	    tel: +358 0 4357 7348
	    fax: +358 0 4357 7340


	DOME 3.0

	    Developers who need to create truly distributed applications now
	    have a Distributed Object Management Environment.  Suite's DOME
	    is a complete distributed object-oriented architecture with
	    class libraries, application development tools and run-time

	    With DOME, systems can be developed for diverse platforms,
	    created using all of the features of different platforms, while
	    minimizing their complexities and disparities.

	    DOME addresses application development with a layered approach.
	    Figure 1 above [where?] shows DOME, the relationships of the
	    various components or services, and how they communicate with
	    one another.

	    Suite's DOME 3.0 lays the foundation for a truly distributed
	    computing environment. All basic functionality needed to create
	    a true Distributed Object Management Environment are present.
	    The business benefits of DOME are time and money.  DOME reduces
	    the time needed to build applications that work across
	    distributed and heterogeneous environments.	 All companies today
	    face the problem that old applications run on physically
	    disparate environments.  The DBMSs, network protocols and
	    operating systems are not homogenous.  New application
	    development is being forced to build applications that work with
	    the old applications.  Computers on the desktop are a reality.
	    DOME facilitates building new applications that take advantage
	    of the new high performance workstations while making it easy to
	    tie the new applications to the old applications, i.e.,
	    application interoperability.  All of this can be done much
	    easier and quicker, with fewer maintenance problems with DOME.



		    - Store and forward (i.e., queueing)
		    - Multicast and Broadcast support
		    - Link Services
		    - Scripting support
		    - Uses Directory Services

		    - User definable Messages
		    - Message packing and unpacking
		    - Message translation
		    - Large Messages
		    - Multiple levels of message recovery
		    - Priority Message Queuing
		    - Selective Message reception
		    - Logical Addressing (Uses Directory Services)

		Directory Services

		    - Scripts
		    - Object location
		    - Parent/child and peer-to-peer
		    - Aliasing (i.e., logical names)
		    - Concerns (i.e., the ability to notify users of an
		      object of a change)
		    - Application, process, user, node object support
		    - Caching

		Time Services

		    - Time arithmetic
		    - Time stamps
		    - String formatting
		    - Time zone conversions


		    - SQL92 (DML and DDL)
		    - Horizontal fragmentation (i.e., data stored in more
		      than one location by value)
		    - Vertical fragmentation (i.e., data stored in more than
		      one location by type of data)
		    - Replication (partial and full)
		    - Triggers and Procedures
		    - Flow of Control (If..Then..Else, While, Return,
		    - SQL92/Sybase interoperability
		    - Support for legacy databases
		    - Distribution of data handled by DBA and DA, not the
		      application programmer


		    - Scripting, full lexical parsing, regular expressions,
		      flow control, buffer management.
		    - Ability to invoke all DOME services from within script


		    - Event Queueing
		    - Callbacks
		    - Event Priority Scheduling

		Management Services

		    - Process recovery
		    - Utilities

		Programming Services

		    - Trace facilities
		    - Playback capability for debugging and audit purposes
		    - Error Logging
		    - Error Recovery
		    - Exception Handling

		Object Services

		    - Object store
		    - Object location
		    - Object registration


	    Anaheim, USA
	    tel: +1 714 938 8850
	    fax: +1 714 978 1840

    Computer Algebra Kit

	Objects for Multiprecision Arithmetic and Computer Algebra

	The Computer Algebra Kit is a collection of Objective C objects
	for arbitrary precision integer arithmetic, efficient polynomial
	arithmetic over arbitrary coefficient domains, and for computing
	with matrices of integers, polynomials, fractions etc.  Each
	carefully designed object comes with a clean, exquisite header
	file and a man page containing both a description of the object
	and a discussion of all public, class and instance methods.

	The Computer Algebra Kit comes with the source of an application,
	called "MySystem", consisting of trivial subclasses of the classes
	in the toolkit.  Once compiled however, this small system provides
	interactive access to many of the features of the Computer Algebra
	Kit.  The "MySystem" application can be used as a shell for adding
	functionality to the Computer Algebra Kit, by extending the
	subclasses, or as a starting point for building your own symbolic
	"front-end" system to numerical code.

	Version: 1.2.2
	Number of Objects: 15
	Key Objects:
	  - Integer object for fast, exact, multiprecision integer
	  - Polynomial object for advanced, polynomial arithmetic, over
	    arbitrary domains
	  - Matrix object for working with matrices of polynomials,
	    fractions etc.

	Binary Bulk of Library: between 1.0 and 1.5 MB dep. platform
	Source Bulk of Library: about 65,000 lines of generated Objective C

	Portability: Stepstone, GNU, NeXT Objective C compatible

	Platforms: Linux, SunOS, Solaris, AIX, IRIX, NeXT available now,
		others coming soon!

	For more information, or to download a copy of this library of
	objects, please refer to the Computer Algebra Kit's web:


	    David Stes

    TipTop Software

	Objective-Framework (Objective-Tcl, Objective-Perl, ...)

	    The Objective-Framework from TipTop Software
	    ( system provides true language
	    independence to the Objective-C (e.g., OpenStep) object model.
	    Objective-Framework provides a seamless integration of the
	    Objective-C runtime system with other languages.
	    Objective-Framework not only breaks the barrier between
	    interpreted and compiled code, but it also breaks the barrier
	    between various programming languages!  Objective-Tcl and
	    Objective-Perl are two languages currently available.  More to

	    Some of the benefits of Objective-Framework include:

	      - Rapid application prototyping and development environment.
		The Objective-Framework languages, Objective-Tcl and
		Objective-Perl, provide a dynamic interactive interpretive
		environment.  You get immediate feedback to all your
		programming actions in this environment, so you can
		prototype and develop much more rapidly.  You can define and
		redefine classes on-the-fly, at runtime, skipping the
		traditional code-compile-lik-debug development cycle.

	      - True language independence.  You can seamlessly
		mix-and-match languages.  Thus you can use Objective-Perl
		for heavy-duty text processing, use Objective-Tcl for highly
		interactive (e.g., exploratory) programming, etc.  Classes
		can have mixed implementation; certain methods can be
		implemented in Objective-C, other methods can be implemented
		in Objective-Tcl, yet some other methods can be implemented
		in Objective-Perl, etc.  It is transparent and irrelevant to
		the sender of a message which language implements the
		corresponding method---the method looks "native" to the

	      - Extend existing applications.  The Objective-Framework
		runtime library can be linked with any NEXTSTEP/OpenStep
		application to easily provide a high-level control
		(scripting) languages.

	      - Interactive Enterprise Object Framework (EOF) development
		environment.  Objective-Tcl and Objective-Perl are very
		useful for EOF development, since this kind of development
		consists of writing high-level glue code which is hard to
		write in a low-level compiled language such as Objective-C,
		and easy to write in high-level languages such as Tcl or

	      - Testing environment.  Objective-Tcl and Objective-Perl are
		ideally suited for regression testing.

	    A more detailed description of the Objective-Framework
	    functionality is availble at  See also for more info.

	    Fully functional evaluation version is available:


	    Objective-Browser (OB) is a graphical runtime introspection and
	    debugging tool.  The browser allows you to view live objects
	    within a running application in many object-specific ways.  OB
	    allows you to easily investigate the structure and methods of
	    various objects and classes.  For example, methods, instance
	    variables, and other object information can be viewed and edited
	    during execution.

	    To a user, OB appears as a hierarchical browsing tool, similar
	    to the file system browser.  Each node in the browser represents
	    an object or some other piece of information (e.g., a method)
	    with an arbitrary number of subnodes.  For example, when looking
	    at an object, instance variables or methods appear as subnodes.

	    OB is extensible.  You can provide object-specific browser nodes
	    and custom inspectors for any object in the system.  OB can be
	    used from any application which is linked with the Objective-Tcl
	    runtime---the browser is dynamically loaded when needed.

	Contact Information:

	    TipTop Software
	    PO Box 30681
	    Bethesda, MD 20824-0681
	    tel: +1-301-656-3837
	    fax: +1-301-656-8432

GPL Kits


	An alpha version of an GNU Objective-C class library for X/Motif
	Windows is available via anonymous ftp from

	For lack of a good witty name, the library is called objcX.  The
	library requires gcc 2.7.0 or later and libobjects 0.1.10 or later.

	Because we built this library to support porting NeXTSTEP
	applications to X/Motif and because our GUI programming experience
	has been with NeXTSTEP, this class library has a strongly
	resemblance to NeXT's AppKit.  However, it is only a Objective-C
	wrapper to Motif widgets and does not support Display PostScript,
	rich text, pasteboard, drag and drop, services or many other things
	associated with the NeXTSTEP environment that are not available
	under X windows.

	From version 0.8, the nib translator is part of the objcX
	distribution, as well as some examples of using objcX.

	These announcements are also a call for help.  The library and the
	translator program could use much more work in two areas...

	 - first the library could be flushed out with more features to
	   support larger applications

	 - second, I would like to contribute the library to the GNU
	   project.  But it is based on Motif widgets which is not free
	   software.  Thus, work is needed to replace Motif widgets with
	   widgets based on free software.

	To stay informed, join the mailing list by
	sending a subscription email to


	    Paul F. Kunz (NeXT mail ok)
	    Stanford Linear Accelerator Center, Stanford University
	    Voice: (415) 926-2884   (NeXT) Fax: (415) 926-3587

    Tcl/Objective-C Interface Library

	A library of Objective-C objects and support functions for
	communication between Objective-C and Tcl/Tk.  From Tcl you can send
	messages to Objective-C objects and get textual representations of
	what's returned.  Thus it provides a way to interactively type
	messages and see the results, all inside the rich structure of the
	Tcl scripting language---almost an Objective-C interpreter.  The
	library also provides an Objective-C object that will forward all of
	its messages to the Tcl interpreter in textual format.

	The library does NOT provide:
	  * Handling arguments of non-atomic C types.
	  * Tk widgets based NeXTSTEP AppKit objects.
	  * The ability to create new Objective-C classes
	    or methods from Tcl.

	The library is available by anonymous ftp at

	The library requires gcc (2.5.8 or higher) or NeXT's cc and tcl-7.3.
	If you have tk-3.6, the library can be configured to use it.  If you
	have libreadline, the library can be configured to use it.  Gcc and
	libreadline are available at any of the GNU archive sites; tcl and
	tk are available from


	    R. Andrew McCallum		  ARPA:
	    Computer Science Department	  UUCP: uunet!!mccallum
	    University of Rochester	  VOX: (716) 275-2527
	    Rochester, NY  14627-0226	  FEET: CSB  Rm. 625


	[Fri Dec  5 1997]

	An OpenStep Foundation Kit library

	libFoundation is a free implementation of the Foundation library
	as defined by the OpenStep specification, plus more classes that
	come with the newest releases of OPENSTEP 4.x and Rhapsody. The
	last released version of libFoundation is 0.8.0.

	Some extensions to the OpenStep specification are also present.
	They include an extended exception handling mechanism, a garbage
	collector based on reference counting and a printf-like formatting
	class.  The exception handling mechanism is very similar with
	those found in Java and C++ and requires support for nested
	functions from the compiler.  The garbage collector adds the
	benefits of automatic garbage collecting to the OpenStep programs
	and it is fully integrated with OpenStep classes.  The printf-like
	formatting class is a general purpose class that can be used to do
	various operations that require parsing of format strings like in
	printf().  This class is used for example to do all the formatting
	jobs in the NSString class in libFoundation.  There is another
	class UnixSignalHandler designed which gives an object-oriented
	approach to the Unix signal handling mechanism.

	These extensions are also available in a separate library for
	other OpenStep Foundation implementations; the current supported
	Foundation libraries are gnustep-base and the Foundation library
	in OPENSTEP 4.x.  We dropped the support for the buggy
	implementation of the Foundation library that comes with NeXTSTEP
	3.3; sorry for this.

	The library was ported on the following platforms:
	m68k-next-nextstep3, i386-next-nextstep3, i386-pc-linux-gnu,
	i386-pc-cygwin32 (Windows NT), i386-unknown-solaris2.5.1,
	sparc-sun-solaris2.5, alpha-unknown-linux-gnu.  Preliminary
	support has been done for HPUX 9.x.  The library also runs with
	GNU runtime on OPENSTEP 4.x for Mach/Intel using the a modified
	GNU compiler.

	Coming soon are Distributed Objects and Unicode support in

	You can download the sources from

	More information about libFoundation and related work can be found


	    Ovidiu Predescu <>
	    Mircea Oancea <>

    libtl -- Tiggr's Objective-C Library

	TL is a basic Objective-C library, which happens to incorporate a
	Lisp interpreter, which provides a seamless integration between
	Objective-C and Lisp.  (It is neither common lisp nor emacs lisp; it
	is probably best described by the name tiggr's lisp.)  TL provides
	mark & sweep garbage collection to instances of TLObject or a
	subclass thereof.

	TL provides a large number of classes, including a `root' object
	TLObject, a patch for existing root objects, and of course the
	usual strings, streams, containers, etc.  Furthermore, it includes
	a host of Lisp invokable (but C written and thus also C invokable)

	If reference counting is not provided by another library, TL
	provides reference counting and an NSAutoreleasePool.

	TL has been tested on HP9000/735 HP-UX 9.05 with the GNU runtime,
	and on a NeXTstation Mono Turbo NS3.3 with the NeXT runtime.

	TL is distributed under the GNU General Public License.  TL comes
	WITHOUT ANY WARRANTY.  See the file LICENSE in the TL distribution
	for details.

	TL is available through anonymous FTP at


	    Pieter Schoenmakers
	    tel: +31 40 2473387 (work, voice)

Public Domain Kits


	IconKit is an Objective-C class library for building drag-and-drop
	applications.  It recreates the shelves, browsers, folders, and
	suitcases that are present throughout the basic NEXTSTEP

	    - The file browser and shelf in Workspace.
	    - The bookshelves in Librarian.
	    - The project browser in ProjectBuilder.
	    - The suitcases in InterfaceBuilder.
	    - The feature browser used to configure a DBTableView.

	IconKit contains all the objects one needs to build new applications
	of this kind.  It is fully integrated with InterfaceBuilder,
	providing a palette and inspectors for all the IconKit classes.  It
	comes complete with source code, documentation, and an example
	application that mimics the NEXTSTEP Workspace file viewer.

	IconKit is freely distributable and free for noncommercial use.  It
	costs money for a commercial license, but you are allowed to use
	IconKit get your application working before deciding whether to
	purchase it.  The General Objectware License that covers this policy
	is broadly applicable, and other developers are encouraged to adopt
	it for their own software.

	IconKit should work on any system running NEXTSTEP 3.0 or later.


	IconKit may be freely distributed, in whole or in part, provided
	only that the included ReadMe file and the General Objectware
	License are neither removed nor altered in any way.  The complete
	kit is available from either of the two archive locations,

	FileViewer is a compiled MAB version of an example application that
	recreates the NEXTSTEP file browser.  Complete source is included in

	In the event that you cannot locate IconKit at either of these two
	locations, you should contact the author to receive the complete
	distribution.  All questions and correspondence are welcome!


	    H. Scott Roy
	    2573 Stowe Ct.
	    Northbrook, IL  60062-8103


	Package consisting of an Objective-C Webserver class.

	By subclassing the Webserver class and implementing the -contents
	message (in a subclass) one can easily build a small (concurrent)

	The package has been built on HP-UX, IRIX, Freebsd and Linux.

	inetpak is available from

	[Entry-up-to-date: Fri Sep 11 16:33:21 1998]


	A compiler for semi-automatically translating Smalltalk code (such
	as code developed in Squeak) towards Objective-C.

	nproducer is available from

	[Entry-up-to-date: Fri Sep 11 16:34:06 1998]

    Various authors


	    [Abridged press release].


	    Update to Kit of Free Objective-C Objects Is Now Available

	    PROVO, UT, July 28, 1997 -- A new release of the MiscKit has
	    been made publically available.  It contains many new objects
	    and fixes all problems reported since the previous release.
	    This is the NEXTSTEP version of the kit!  A new release of the
	    OPENSTEP version is expected soon.  The MiscKit may be
	    obtained via ftp to one of the following locations:

	    There is a quad fat binary release accompanying this release:

	    The site always has the most recent official
	    MiscKit distribution available in /pub/next/misckit with all
	    previous versions archived in /pub/next/misckit/old.

	    The MiscKit is an easy to install kit consisting of
	    Objective-C objects, Interface Builder palettes, bundles, and
	    other useful programming resources.  All the resources in the
	    MiscKit have been donated by various Internet personalities
	    for the benefit of other NEXTSTEP programmers.

	    Objects include data structures (string, tree, stack, queue,
	    priority queue, linked list), interface widgets (find panel,
	    textfield, button and slider subclasses, clock and calendar
	    views, icon wells, progress pie/bar), macros, other useful
	    objects (lock file, log file, time, stopwatch, serial port,
	    colors, subprocess, remote subprocess, file), frameworks for
	    building complex interfaces (MiscMergeKit, MiscInspectorKit,
	    InfoMenuKit) and even some useful example
	    much more!

	    To make the MiscKit more attractive to developers, use of the
	    MiscKit resources is absolutely free of charge, no matter how
	    the resources are used.  Redistribution of the MiscKit is also
	    encouraged.  Many developers are reluctant to use objects
	    which are under the GNU "Copyleft".  As a result, the MiscKit
	    has its own license which allows developers to reuse the code
	    freely, even in commercial projects.  Everything possible has
	    been done to encourage the use of the MiscKit to speed
	    development efforts.

	    Any developer who has generally useful objects, palettes, or
	    other programming resources and would like to donate them to
	    the MiscKit effort is welcome to do so.  Contact Don Yacktman
	    at for information on how to prepare a MiscKit
	    submission.  By making a submission to the MiscKit, a
	    developer can avoid the hassles of packaging up a formal
	    distribution of their resources and in turn help add to a
	    growing centralized pool of useful resources.

	    The misckit mailing lists are temporarily out of order and we
	    hope to have them up and working at a new site soon.  Until
	    then, inquiries and subscription requests should be made to  If you request a subscription, be sure to
	    specify whether you wish to be part of the development
	    discussion or only receive MiscKit-based press releases.  When
	    the mailing lists are once again up and running, a press
	    release will be sent out to and let everyone know about the
	    changes in addresses and any other important details.

	    Please note that the creation of the "" domain does
	    NOT mean that the MiscKit is "going commercial" in any way--it
	    will always be free and open as it has been in the past.
	    Nothing has changed and NO special significance should be read
	    into the use of ".com" instead of ".org".

	    The MiscKit has evolved from the DAYMiscKit and several
	    objects released over the past few years by Don Yacktman and
	    other USENET personalities.


	    Don Yacktman



	    The Music Kit provides tools for designing music
	    applications. These tools address three topics: music
	    representation, performance, and synthesis (digital sound
	    generation and processing).	 The Objective-C classes defined in
	    the Music Kit fall neatly into these three areas.

	    The design goal of the Music Kit is to combine the interactive
	    gestural control of MIDI with the precise timbral control of
	    MUSIC 5-type systems in an extensible, object-oriented
	    environment. To this end, the Music Kit is capable of fully
	    representing MIDI.	The Music Kit accepts MIDI in and can send
	    MIDI out through the two serial ports at the back of the
	    computer. Nonetheless, the Music Kit isn't limited by the MIDI
	    specification; for example, its resolution of frequency and
	    amplitude is much finer than MIDI's highly quantized values.

	    The Music Kit generates sounds by sending synthesis instructions
	    to the DSP.	 The generality of the synthesis software far
	    surpasses that of commercial synthesizers.	While most
	    synthesizers employ only one type of synthesis-the Yamaha DX-7
	    uses only frequency modulation, for example-the Music Kit can
	    implement virtually any sound synthesis strategy.  And since the
	    synthesis engine (the DSP) and the control stream are brought
	    together in a single high-performance computer, the Music Kit
	    makes possible an unprecedented level of expressive control.
	    (from Documentation/MusicKit+DSP/General/SoundMusicDSP.rtfd)

	    MusicKit used to be supplied by NeXT as part of NeXTSTEP (pre
	    3.0).  It is now maintained by CCRMA and available in two

		    NI-fat Class library, header files, documentation,
		    programming examples, and a suite of applications
		    (size = 13MB).

		    Source of the MusicKit class library (size = 5MB).




	`ObjectPak' is not just `another' collection class library.
	ObjectPak is a rewrite from scratch of the objects described in
	Brad Cox' book. ObjectPak is largely compatible in interface with
	the collection classes of Stepstone's ICpak101 (but not with the
	ICpak101 foundation classes), and hence also with the Smalltalk
	Collection Classes from Adele Goldberg's book.  The library comes
	with source code, header files, RTF and HTML documentation.

	Runtime dependencies are left out of ObjectPak.  You can therefore
	work with the same objects on any current or future implementation
	of Objective C, yet take advantage of each particular environment:
	ObjectPak has been tested on NextStep, Stepstone and GNU Objective
	C, and has been ported to several Unix platforms (Linux, Solaris,

	Classes in ObjectPak
	String     string objects
	Collection collections of objects, ordered
	Set        sets of objects, no duplicate entries
	Dictionary dictionaries, key-value tables
	Tree       instances keep their contents sorted in a tree
	Sequence   sequencing over groups of objects

	ObjectPak is an ideal starting-point for writing all sorts of text
	filters or processors in Objective C : as a demonstration of what
	can be done, the library comes with a small program to print a
	collection, a set without duplicates, a dictionary or a sorted
	list of the words in a text file.

	ObjectPak is public domain software; get a copy from the Computer
	Algebra Objects web-site, located at "".


	    David Stes


    The information in this file comes AS IS, WITHOUT ANY WARRANTY.  You may
    use the information contained in this file or distribute this file, as
    long as you do not modify it, make money out of it or take the credits.

    All trademarks appearing in this file are owned by their respective
    owner.  To increase the information content in this file, any indication
    to that effect is not present in the FAQ other than in this paragraph.

A World Wide Web hypertext version of this FAQ is maintained by Steve Dekorte
<> at
A Japanese language version of this FAQ, maintained by Norihiro Itoh
<>, resides at

The first version of this FAQ was written by Bill Shirly, helped by the
feedback and information given to him by a lot of people.  The current
version is maintained by Pieter Schoenmakers <>, supported
by feedback from Glen Diener, Christopher Lozinski, Sean Luke and a lot of
other people.  Mail your bug reports, comments, suggestions and additions

User Contributions:

Comment about this article, ask questions, or add new information about this topic:

[ Usenet FAQs | Web FAQs | Documents | RFC Index ]

Send corrections/additions to the FAQ Maintainer:

Last Update March 27 2014 @ 02:11 PM