home *** CD-ROM | disk | FTP | other *** search
/ Mac-Source 1994 July / Mac-Source_July_1994.iso / Information / comp.lang.objective-c / comp.lang.objective-c_FAQ,_par0 next >
Encoding:
Internet Message Format  |  1994-06-01  |  28.1 KB  |  [TEXT/R*ch]

  1. Path: bloom-beacon.mit.edu!hookup!usc!howland.reston.ans.net!EU.net!sun4nl!news.nic.surfnet.nl!tuegate.tue.nl!krait.es.ele.tue.nl!tiggr
  2. From: tiggr@es.ele.tue.nl (Tiggr)
  3. Newsgroups: comp.lang.objective-c,comp.answers,news.answers
  4. Subject: comp.lang.objective-c FAQ, part 2/3: ClassWare Listing
  5. Supersedes: <classes_766598668@es.ele.tue.nl>
  6. Followup-To: comp.lang.objective-c
  7. Date: 17 May 1994 16:00:11 GMT
  8. Organization: Eindhoven University of Technology, the Netherlands
  9. Lines: 714
  10. Approved: news-answers-request@mit.edu
  11. Expires: 26 Jun 1994 16:00:08 GMT
  12. Message-ID: <classes_769190408@es.ele.tue.nl>
  13. Reply-To: tiggr@es.ele.tue.nl (Tiggr)
  14. NNTP-Posting-Host: krait.es.ele.tue.nl
  15. Summary: This second part of the comp.lang.objective-c FAQ postings
  16.         gives an overview of available class libraries.
  17. Originator: tiggr@krait.es.ele.tue.nl
  18. Xref: bloom-beacon.mit.edu comp.lang.objective-c:1631 comp.answers:5400 news.answers:19632
  19.  
  20. Archive-name: Objective-C/classes
  21. Version: $Id: classes,v 2.11 1994/04/16 15:48:00 tiggr Exp $
  22.  
  23.  
  24.  
  25.                 Objective-C
  26.  
  27.                  ClassWare Listing
  28.  
  29.  
  30.  
  31. This is the second of three FAQ postings for comp.lang.objective-c.  This
  32. posting lists available kits and classes, to aid the reader in answering the
  33. question `to re-use or to re-invent?'.  In order to keep this list up to date
  34. and as interesting and diverse as possible, send your additions, deletions
  35. and suggestions to tiggr@es.ele.tue.nl.
  36.  
  37. The available classes and kits are categorized as follows:
  38.  
  39.     Stepstone    Stepstone libraries,
  40.             for use with Stepstone's environment
  41.     NeXT        NeXT kits, for use with NEXTSTEP
  42.     FSF        FSF maintained/released classes
  43.             for use with GNU CC
  44.     Third Party    commercial classes
  45.     GPL        classes released under the GPL
  46.     Public Domain    public domain classes---no GPL
  47.  
  48.  
  49. Stepstone
  50.  
  51.     Bundled with the compiler is ICpak 101 Foundation Class Library.  This
  52.     library provides twenty classes and more than three hundred methods
  53.     including such things as Collections (OrdCltn, Stack, Set, Dictionary,
  54.     SortCltn), Arrays (IdArray, IntArray), String, Sequences, Automatic
  55.     Object I/O (ASCII Filer), etc.
  56.  
  57.     The ICpak 201 Graphical User Interface library is used to build iconic
  58.     multi window user interfaces for workstation applications.  The library
  59.     consists of 58 classes and over 1,100 methods.  Classes include such
  60.     things as Controllers, Menu's, Menu Items, Icons, Windows(StdLayer),
  61.     Timers, Buttons, Text, etc, etc.  ICpak 201 is ported to X Windows,
  62.     OpenWindows, Motif and SunView and provides a consistent user interface/
  63.     look-and-feel between all platforms.
  64.  
  65.     Contact
  66.  
  67.     The Stepstone Corporation
  68.     75 Glen Road
  69.     Sandy Hook, CT 06482
  70.     tel: +1 203 426-1875
  71.     fax: +1 203 270-0106
  72.     telex: 506127
  73.  
  74. NeXT
  75.  
  76.     Common Classes
  77.  
  78.     Several classes provided with NeXTSTEP do not belong to a specific
  79.     kit: Object (core of the runtime system, root of the general class
  80.     hierarchy), Storage, List (an abstract array), HashTable (to store
  81.     (key, object) associations), StreamTable (to write data to streams)
  82.     and NXStringTable (to store (key, string) associations).
  83.  
  84.     Application Kit
  85.  
  86.     The Application Kit defines a set of Objective-C classes and
  87.     protocols, C functions, and assorted constants and data types that
  88.     are used by virtually every NeXTSTEP application.  The pith of the
  89.     Kit are the tools it provides for implementing a graphical,
  90.     event-driven user interface:
  91.  
  92.         The Application Kit provides classes---most notably Window and
  93.         View---that make drawing on the screen exquisitely succinct.
  94.         Much of the unromantic work that's involved in
  95.         drawing---communicating with hardware devices and screen
  96.         buffers, clearing areas of the screen before drawing,
  97.         coordinating overlapping drawing areas---is taken care of for
  98.         you, letting you concentrate on the much more gratifying task of
  99.         supplying code that simply draws.  And even this task is
  100.         assisted by many of the other classes and a number of C
  101.         functions that provide drawing code for you.
  102.  
  103.         The Application Kit makes event handling extremely simple.  The
  104.         Responder class, from which many of the Kit's classes inherit,
  105.         defines a mechanism by which the user's actions are passed to
  106.         the objects in your application that can best respond to them.
  107.         The Application class, which inherits from Responder,
  108.         establishes the low-level connections that makes this system
  109.         possible.  It provides methods that inform your application of
  110.         watershed events, such as when the user makes the application
  111.         active and inactive, and when the user logs out or turns off the
  112.         computer.
  113.  
  114.     By using these tools, you bless your application with a look and
  115.     feel that's similar to other applications, making it easier for the
  116.     user to recognize and use.
  117.  
  118.     (Introduction from the NeXTSTEP General Reference, "Application Kit"
  119.     reprinted with permission.  Copyright (c) 1993 NeXT Computer, Inc.
  120.     All rights reserved.)
  121.  
  122.     Database Kit
  123.  
  124.     The Database Kit provides a comprehensive set of tools, classes, and
  125.     protocols for building applications that use a high-level
  126.     entity-relationship model to manipulate database servers such as
  127.     those provided by Oracle or Sybase.  The kit provides services that
  128.     include:
  129.  
  130.         Communication with client-server databases.
  131.  
  132.         Modeling properties (attributes and relationships) of each
  133.         database.
  134.  
  135.         Record management and buffering.
  136.  
  137.         Data flow between record managers and the application user
  138.         interface.
  139.  
  140.         User interface objects for display and editing.
  141.  
  142.     (Introduction from the NeXTSTEP General Reference, "Database Kit"
  143.     reprinted with permission.  Copyright (c) 1993 NeXT Computer, Inc.
  144.     All rights reserved.)
  145.  
  146.     Distributed Objects
  147.  
  148.     The Distributed Objects system provides a relatively simple way for
  149.     applications to communicate with one another by allowing them to
  150.     share Objective-C objects, even amongst applications running on
  151.     different machines across a network.  They are useful for
  152.     implementing client-server and cooperative applications.  The
  153.     Distributed Objects system subsumes the network aspects of typical
  154.     remote procedure call (RPC) programming, and allow an application to
  155.     send messages to remote objects using ordinary Objective-C syntax.
  156.  
  157.     The Distributed Objects system takes the form of two classes,
  158.     NXConnection and NXProxy.  NXConnection objects are primarily
  159.     bookkeepers that manage resources passed between applications.
  160.     NXProxy objects are local objects that represent remote objects.
  161.     When a remote object is passed to your application, it is passed in
  162.     the form of a proxy that stands in for the remote object; messages
  163.     to the proxy are forwarded to the remote object, so for most intents
  164.     and purposes the proxy can be treated as though it were the object
  165.     itself.  Note that direct access to instance variables of the remote
  166.     object isn't available through the proxy.
  167.  
  168.     (Introduction from the NeXTSTEP General Reference, "Distributed Objects"
  169.     reprinted with permission.  Copyright (c) 1993 NeXT Computer, Inc.
  170.     All rights reserved.)
  171.  
  172.     Indexing Kit
  173.  
  174.     The Indexing Kit is a set of programmatic tools for managing data,
  175.     especially the large amounts of data characteristic of information
  176.     intensive applications.  Much as the Application Kit provides a
  177.     framework for a graphical interface, the Indexing Kit provides a
  178.     framework for data management.
  179.  
  180.     The Indexing Kit supplies facilities for building custom databases
  181.     and for searching the UNIX file system.  Key benefits include
  182.     guaranteed data integrity, excellent performance, thread-safe
  183.     operation, tight integration with the NeXTSTEP programming
  184.     environment, and the ability to efficiently store and retrieve
  185.     Objective-C objects and unstructured data like text, sound, and
  186.     images.
  187.  
  188.     The Indexing Kit consists of:
  189.  
  190.         A transaction-oriented foundation for storing and retrieving
  191.         persistent data, using virtual memory mapping for efficient
  192.         random access to parts of a file without reading or writing the
  193.         entire file. Transactions guarantee data integrity on persistent
  194.         storage media, and are also used to manage concurrent access to
  195.         shared data.
  196.  
  197.         Fast sequential and associative access to stored data.
  198.         Associative access is untyped, in that the programmer defines
  199.         the data types of keys and their ordering by means of a
  200.         comparison function or a format string.
  201.  
  202.         A simple data management capability based on the Objective-C
  203.         run-time system.  Records can be moved efficiently between
  204.         working memory and the storage substrate in the form of
  205.         Objective-C objects.  Multiple indexes can be built over
  206.         programmer-defined attributes, so that records can be ordered
  207.         and retrieved by the values of their indexed attributes.
  208.  
  209.         A general query processing facility, including a declarative
  210.         query language and its interpreter.  Queries can be applied to
  211.         individual objects, to collections of objects, or to the
  212.         attribute/value lists produced by Indexing Kit's customizable
  213.         text processing tools.
  214.  
  215.         High-level file system searching facilities based on the
  216.         supporting layers described above, including fast literal
  217.         searching of file contents.
  218.  
  219.     (Introduction from the NeXTSTEP General Reference, "Indexing Kit"
  220.     reprinted with permission.  Copyright (c) 1993 NeXT Computer, Inc.
  221.     All rights reserved.)
  222.  
  223.     Mach Kit
  224.  
  225.     The Mach Kit provides an object-oriented interface to some of the
  226.     features of the Mach operating system.  At this time, it is most
  227.     useful to applications that make use of the Distributed Objects
  228.     system, since these applications rely upon Mach's message sending
  229.     abilities to transport objects, ports, and data between processes.
  230.     The Mach Kit may also be useful for drivers and multi threaded
  231.     applications.  The Mach Kit provides several classes and protocols,
  232.     listed below.
  233.  
  234.     (Introduction from the NeXTSTEP General Reference, "Mach Kit"
  235.     reprinted with permission.  Copyright (c) 1993 NeXT Computer, Inc.
  236.     All rights reserved.)
  237.  
  238.     NetInfo Kit
  239.  
  240.     The NetInfo Kit is a collection of classes and a single function
  241.     used to provide a connection to and interface with NetInfo domains.
  242.     The NetInfo Kit provides classes for basic interface with a domain
  243.     as well as specialized panels.
  244.  
  245.     (Introduction from the NeXTSTEP General Reference, "NetInfo Kit"
  246.     reprinted with permission.  Copyright (c) 1993 NeXT Computer, Inc.
  247.     All rights reserved.)
  248.  
  249.     3D Kit
  250.  
  251.     The 3D Graphics Kit enables NeXTSTEP applications to model and
  252.     render 3-dimensional scenes.  Much as the Application Kit's 2D
  253.     graphics capabilities are based on the Display PostScript
  254.     interpreter, the 3D Kit's capabilities are based on the Interactive
  255.     RenderMan renderer.  There are both similarities and differences in
  256.     the inner workings of the two implementations.
  257.  
  258.     One similarity is that both are implemented with a client-server
  259.     model, in which client applications send drawing code to the Window
  260.     Server, which does the actual drawing.  Another similarity is that
  261.     N3DCamera---the 3D Kit's View---generates all drawing code, both 2D
  262.     and 3D, when its drawSelf: method is invoked.  This keeps the
  263.     Application Kit's display mechanism intact for both PostScript and
  264.     RenderMan drawing.
  265.  
  266.     One difference in the implementations is in the code generated for
  267.     drawing. For 2D drawing, a View sends PostScript code to the Window
  268.     Server's Display PostScript interpreter.  For 3D drawing, a View
  269.     sends RenderMan Interface Bytestream (RIB) code to the Window
  270.     Server's Interactive RenderMan renderer.
  271.  
  272.     (Introduction from the NeXTSTEP General Reference, "3D Graphics Kit"
  273.     reprinted with permission.  Copyright (c) 1993 NeXT Computer, Inc.
  274.     All rights reserved.)
  275.  
  276.     Sound Kit
  277.  
  278.     The Sound Kit is designed to provide both low- and high-level access
  279.     to sound hardware on workstations running NeXTSTEP, including
  280.     support for a wide variety of sound formats, real-time mixing and
  281.     compression.  The Sound Kit consists of five general categories of
  282.     objects:
  283.  
  284.         Sound Device Objects
  285.     
  286.         Sound Device objects, like NXSoundIn and NXSoundOut,
  287.         wrap the low-level hardware and sound drivers into
  288.         simple, extensible packages.
  289.  
  290.         Sound Streams
  291.  
  292.         Sound Stream objects, like NXPlayStream or NXRecordStream,
  293.         allow the sound output of many simultaneous programs to be
  294.         mixed, scaled, and processed before being sent out the Sound
  295.         objects.
  296.  
  297.         The Sound Object
  298.  
  299.         The Sound object is NeXTSTEP's fundamental sound data
  300.         storage and playback/recording facility.
  301.  
  302.         The SoundView Object
  303.  
  304.         NeXTSTEP's Sound View is a graphical display of sound data
  305.         that interacts well with the NeXTSTEP GUI.
  306.  
  307.         The Sound Meter Object
  308.  
  309.         The Sound Meter displays the current running amplitude of a
  310.         playing or recording sound (in mono), much like volume
  311.         meters on amplifiers or tape decks.
  312.  
  313.     In addition to this library, NeXT provides two sets of sound driver
  314.     and sound access functions.
  315.  
  316.     NXLiveVideoView
  317.  
  318.     The NXLiveVideoView class provides API for interactive display of
  319.     live video on the screen of a NeXTdimension Computer.  The
  320.     NXLiveVideoView class specification provides a complete discussion
  321.     of the NeXTdimension Computer's video capabilities and the API
  322.     provided by NXLiveVideoView.
  323.  
  324.     (Introduction from the NeXTSTEP General Reference, "Video"
  325.     reprinted with permission.  Copyright (c) 1993 NeXT Computer, Inc.
  326.     All rights reserved.)
  327.  
  328.     Applications
  329.  
  330.     There are several classes which solely exist to enable the
  331.     programmer to add functionality to specific existing NEXTSTEP
  332.     applications:
  333.  
  334.         IBPalette, IBInspector
  335.  
  336.         These classes allow developers to expand the functionality
  337.         of the Interface Builder application, creating their own
  338.         palettes of objects that can be dragged into an interface,
  339.         and inspectors to set and view the attributes of those
  340.         objects.
  341.  
  342.         Layout
  343.  
  344.         This class allows developers to add their own modules to the
  345.         Preferences application.
  346.  
  347.         WMInspector
  348.  
  349.         This class allows developers to add their own file contents
  350.         inspectors to the Workspace Manager application.
  351.  
  352.     Other
  353.  
  354.     Before NeXTSTEP 3.0, MusicKit was distributed as part of NEXTSTEP.
  355.     MusicKit is now maintained and made available by CCRMA (see the
  356.     entry under `Public Domain Kits').  Also until the advent of
  357.     NeXTSTEP 3.0, PhoneKit was part of NeXTSTEP.  PhoneKit classes
  358.     provided easy to ISDN connections.
  359.  
  360.     Contact
  361.  
  362.     NeXT Computer, Inc.
  363.     900 Chesapeake Drive
  364.     Redwood City, CA 94063
  365.     tel: +1 800 848 NEXT
  366.     fax: +1 415 780 2801
  367.     email: NeXTanswers@NeXT.COM
  368.  
  369. FSF
  370.  
  371.     Object
  372.  
  373.     Object is the root class which comes as part of the Objective-C
  374.     runtime library provided with the GNU CC compiler.
  375.  
  376.     Collection Library
  377.  
  378.     The Collection Library is a library of Objective-C objects with
  379.     similar functionality to Smalltalk's Collection objects.  It
  380.     includes: Set, Bag, Array, CircularArray, GapArray, Queue, Stack,
  381.     Heap, LinkedList, BinaryTree, SplayTree, RBTree, Dictionary,
  382.     MappedCollector, EltNodeCollector and DelegateList.
  383.  
  384.     Outside of its main hierarchy it also includes List, HashTable and
  385.     Storage objects compatible with NeXT's objects of the same name.
  386.  
  387.     An alfa release of the Collection Library can be obtained by FTP
  388.     from cs.rochester.edu:/pub/libcoll/libcoll-yymmdd.tar.gz, in
  389.     which `yymmdd' is a string of digits specifies its date.
  390.  
  391.     The Collection Library needs GCC 2.5.0 or a more recent version
  392.     to be compiled.
  393.  
  394.     Contact: mccallum@cs.rochester.edu
  395.  
  396.     Contact
  397.  
  398.     Free Software Foundation
  399.     675 Massachusetts Avenue
  400.     Cambridge, MA  02139
  401.     +1-617-876-3296
  402.  
  403.  
  404. Third Party Kits
  405.  
  406.     Hot Technologies
  407.  
  408.     BARCODEKIT
  409.  
  410.         BarCodeKit is a comprehensive collection of object palettes for
  411.         creating international standard bar codes.  BarCodeKit allows
  412.         both developers and organizations to quickly add bar coding to
  413.         custom NEXTSTEP applications.  By combining the power of object
  414.         orientation and PostScript into a comprehensive library of bar
  415.         code symbologies, BarCodeKit represents the state of the art in
  416.         bar code technology.  Developers can seamlessly add bar coding to
  417.         an existing application in a matter of minutes by using any of
  418.         the 35 pretested and reusable objects in the BarCodeKit library
  419.         of palettes.  Previously, adding bar coding to an application
  420.         meant weeks or months of development, incompatibility with
  421.         different bar code readers and the use of costly proprietary bar
  422.         code printers.
  423.  
  424.         The BarCodeKit features a full range of bar code symbologies
  425.         including Code 3 of 9, Code 39 Extended, UPC-A, UPC-E, HRI, NDC,
  426.         EAN-8, EAN-13, JAN-8, JAN-13, ISBN, ISSN, SICI, SISAC, POSTNET,
  427.         ABC, FIM, BRM, Interleaved Two of Five, MSI, Codabar, Code 11,
  428.         Code 93, Code 128, Code 16K and Code 49.  It complies to
  429.         international, national, military and commercial bar coding
  430.         standards including EAN, JAN, CEN, ANSI, MIL, USS and HIBCC.
  431.         Furthermore, it provides developers with flexibility; bar codes
  432.         created using the kit can be scaled and rotated to fit a
  433.         specific area on a label or document and saved in EPS, EPSI (EPS
  434.         with interchange bitmap preview for non Display PostScript
  435.         computers), or TIFF formats.  BarCodeKit is an excellent
  436.         complement to NEXTSTEP's Application Kit and Database Kit It was
  437.         nominated for a Best of Breed Award by the editors of NeXTWORLD
  438.         Magazine.
  439.  
  440.     SERIALPORTKIT
  441.  
  442.         SerialPortKit is a fundamental class library and palette that
  443.         makes communication with serial peripherals easy to add into
  444.         your custom NEXTSTEP applications without any of the drawbacks
  445.         of other solutions.  You can use SerialPortKit to communicate
  446.         with a variety of serial peripherals such as modems, printers,
  447.         terminals, audio/video equipment, bar code readers, magnetic
  448.         stripe readers, controllers and data acquisition devices.  The
  449.         SerialPortKit contains a single SerialPort class which
  450.         interfaces to our SerialPortServer. Additional classes for
  451.         specific peripherals are available in our SerialPeripheralsKit
  452.         or through our consulting service.
  453.  
  454.         You can easily incorporate the SerialPortKit into your custom
  455.         applications due to its professionally designed and truly
  456.         object-oriented programming interface. The included Interface
  457.         Builder palette, source code examples, on-line indexed reference
  458.         manuals and tutorial further removes the tedious task of
  459.         traditional serial port programming.  Requires SerialPortServer
  460.         or SerialPortServer Lite which are available also from Hot
  461.         Technologies.
  462.  
  463.     Contact
  464.  
  465.         Hot Technologies
  466.         75 Cambridge Parkway, Suite E-504
  467.         Cambridge, MA 02142-1238 USA
  468.         tel: + 1 617 252 0088
  469.         fax: + 1 617 876 8901
  470.         email: info@hot.com (NeXTmail)
  471.  
  472.     Berkeley Productivity Group
  473.  
  474.     BPG BLOCKS
  475.  
  476.         BPG BLOCKS is an open extensible manufacturing framework which
  477.         supports a variety of applications including factory definition,
  478.         real-time tracking, real-time scheduling, short-term planning,
  479.         shift scheduling, production planning and capacity analysis.
  480.         BPG BLOCKS creates a virtual reality which represents the real
  481.         factory including the people, machines, material, processes,
  482.         their dynamics and interactions.  BPG BLOCKS is based on an easy
  483.         to understand design where every software object represents
  484.         either a real-world entity, or an important concept in the
  485.         manufacturing domain.  BPG BLOCKS' object-oriented manufacturing
  486.         model mirrors the real world, captures numerous manufacturing
  487.         details accurately, supports commonly used abstractions, and
  488.         allows decisions to be made based on aggregate information.  BPG
  489.         BLOCKS forms the basis for building custom applications which
  490.         meet the unique needs of your particular manufacturing
  491.         facility.
  492.  
  493.     Objective-C Views
  494.  
  495.         Objective-C Views is a user interface class library for
  496.         Microsoft Windows.
  497.  
  498.     Contact
  499.  
  500.         Christopher Lozinski
  501.             BPG
  502.             35032 Maidstone Court
  503.             Newark, CA 94560
  504.             tel: +1 510 795-6086
  505.             fax: +1 510 795-8077
  506.             email: lozinski@cup.portal.com
  507.  
  508.  
  509.     M. Onyschuk and Associates Inc.
  510.  
  511.     OBJECT:Math
  512.  
  513.         OBJECT:Math is a comprehensive set of tools and 23 Objective-C
  514.         classes used to add extensible math and string handling to your
  515.         custom and commercial applications:
  516.  
  517.         Compiler---The OBJECT:Math Compiler converts math and string
  518.         expressions (as might be typed into a spreadsheet cell,
  519.         plotting package, etc.) into Objective-C objects.
  520.  
  521.         Unbundler---The OBJECT:Math Unbundler object allows
  522.         end-users to extend their OBJECT:Math applications with
  523.         custom-built or third-party OBJECT:Math function bundles.
  524.  
  525.         User Interface Objects---OBJECT:Math comes complete with a
  526.         Lotus Improv style function picker, a variable editor, and
  527.         objects used to display OBJECT:Math expression trees and
  528.         other tree structures.
  529.  
  530.         As product sources are available the product may even be of
  531.         interest to non-NeXT Objective-C programmers.
  532.  
  533.     Contact
  534.  
  535.         Mark Onyschuk
  536.         M. Onyschuk and Associates Inc.
  537.         tel: +1 416 462 3954
  538.         email: ask-oa@plexus.guild.org
  539.  
  540.  
  541.     Stream Technologies Inc.
  542.  
  543.     Store
  544.  
  545.         Store is an Object Oriented User Level Virtual File System.
  546.         It is described extensively in `Store - Object Oriented Virtual
  547.         File System' by Timo Lehtinen, which is available by anonymous
  548.         FTP from ftp.sti.fi:/pub/sti/doc/papers/store.ps.
  549.  
  550.     Contact
  551.  
  552.         Stream Technologies Inc.
  553.         Valkj\"arventie 2
  554.         SF-02130 Espoo
  555.         Finland
  556.         tel: +358 0 4357 7348
  557.         fax: +358 0 4357 7340
  558.         email: info@sti.fi
  559.  
  560.  
  561. GPL Kits
  562.  
  563.    objcX
  564.  
  565.     An alpha version of an GNU Objective-C class library for X/Motif
  566.     Windows is available via anonymous ftp from
  567.  
  568.         ftp.slac.stanford.edu:pub/sources/objcX-0.6.tar.gz.
  569.  
  570.     For lack of a good witty name, the library is called objcX.
  571.  
  572.     The library requires the List class from the Collection Library for
  573.     GNU Objective-C (libcoll).
  574.  
  575.     Because we built this library to support porting NeXTSTEP
  576.     applications to X/Motif and because our GUI programming experience
  577.     has been with NeXTSTEP, this class library has a strongly
  578.     resemblance to NeXT's AppKit.  However, it is only a Objective-C
  579.     wrapper to Motif widgets and does not support Display PostScript,
  580.     rich text, pasteboard, drag and drop, services or many other things
  581.     associated with the NeXTSTEP environment that are not available
  582.     under X windows.
  583.  
  584.     Also available, for a NeXTSTEP platform only, is a program that
  585.     converts an object archive file generated by the InterfaceBuilder
  586.     (.nib file) into a GNU object archive file usable by the objcX class
  587.     library.  It is available from
  588.  
  589.         ftp.slac.stanford.edu:pub/sources/trnib-0.5.tar.gz
  590.  
  591.     This program requires NeXTSTEP developer and gcc.
  592.  
  593.     These announcements are also a call for help.  The library and the
  594.     translator program could use much more work in two areas...
  595.  
  596.      - first the library could be flushed out with more features to
  597.        support larger applications
  598.  
  599.      - second, I would like to contribute the library to the GNU
  600.        project. But it is based on Motif widgets which is not free
  601.        software.  Thus, work is needed to replace Motif widgets with
  602.        widgets based on free software.
  603.  
  604.     Contact
  605.  
  606.         Paul F. Kunz    Paul_Kunz@slac.stanford.edu (NeXT mail ok)
  607.         Stanford Linear Accelerator Center, Stanford University
  608.         Voice: (415) 926-2884   (NeXT) Fax: (415) 926-3587
  609.  
  610.  
  611.     Tiggr's Objective-C Library
  612.  
  613.     Tiggr's Objective-C Library, or tobjc for short, is a basic
  614.     Objective-C library, whose functionality is based on Lisp.
  615.  
  616.     tobjc provides the following classes: LispObject, LispVector,
  617.     Cons, Double, Integer, String, AVLTree, THashTable, StringTable,
  618.     Trie, Lex, LexC and LexDFG.  Furthermore, tobjc includes a
  619.     program to extract documentation from Objective-C source files.
  620.  
  621.     All classes are a subclass of LispObject.  The LispObject class
  622.     provides its allocation routines and garbage collection (through
  623.     class abstraction) to its subclasses.
  624.  
  625.     tobjc is undergoing continuous development.  Test releases can
  626.     be obtained by anonymous FTP to `ftp.es.ele.tue.nl' as
  627.     `/pub/objc/tobjc-x.xx.tar.gz', where `x.xx' is some version
  628.     indication.  It is by no means finished yet, but certainly
  629.     useful (I have used it for developing a VHDL->ASCIS DFG compiler).
  630.  
  631.     Contact
  632.  
  633.         Pieter J. `Tiggr' Schoenmakers
  634.         email: tiggr@es.ele.tue.nl
  635.         tel: +31 40 123484
  636.         fax: +31 40 128616
  637.  
  638.  
  639. Public Domain Kits
  640.  
  641.     Various authors
  642.  
  643.     MiscKit
  644.  
  645.         The MiscKit is a collection of over sixty objects which extend
  646.         the NEXTSTEP Objective-C development environment in various
  647.         ways.  It includes palletized subclasses of AppKit controls,
  648.         foundation objects, and a variety of useful special purpose
  649.         objects.
  650.  
  651.         Objects include strings, basic data structures, and kits for
  652.         building swapping views and inspectors.  There are also
  653.         frameworks for building Info menus and a generic document
  654.         handling architecture.  Palettized objects include a logarithmic
  655.         and circular sliders, a tri-state button, a combined Slider and
  656.         TextField, and a read-only NXColorWell.  There are other
  657.         objects, functions, and useful macros in the kit as well.
  658.  
  659.         Documentation, examples, tutorials, and complete source code are
  660.         distributed with the MiscKit.  The kit itself is the product of
  661.         over 25 Usenet personalities and is available for use in any
  662.         project free of cost.  The only restriction is that you
  663.         acknowledge use of the kit in your project.
  664.  
  665.     Contact
  666.  
  667.         For more information or to be placed on the MiscKit discussion
  668.         list, contact the kit administrator, Don Yacktman, by sending
  669.         e-mail to misckit-request@byu.edu.
  670.  
  671.     CCRMA
  672.  
  673.     MusicKit
  674.  
  675.         The Music Kit provides tools for designing music
  676.         applications. These tools address three topics: music
  677.         representation, performance, and synthesis (digital sound
  678.         generation and processing).  The Objective-C classes defined in
  679.         the Music Kit fall neatly into these three areas.
  680.  
  681.         The design goal of the Music Kit is to combine the interactive
  682.         gestural control of MIDI with the precise timbral control of
  683.         MUSIC 5-type systems in an extensible, object-oriented
  684.         environment. To this end, the Music Kit is capable of fully
  685.         representing MIDI.  The Music Kit accepts MIDI in and can send
  686.         MIDI out through the two serial ports at the back of the
  687.         computer. Nonetheless, the Music Kit isn't limited by the MIDI
  688.         specification; for example, its resolution of frequency and
  689.         amplitude is much finer than MIDI's highly quantized values.
  690.  
  691.         The Music Kit generates sounds by sending synthesis instructions
  692.         to the DSP.  The generality of the synthesis software far
  693.         surpasses that of commercial synthesizers.  While most
  694.         synthesizers employ only one type of synthesis-the Yamaha DX-7
  695.         uses only frequency modulation, for example-the Music Kit can
  696.         implement virtually any sound synthesis strategy.  And since the
  697.         synthesis engine (the DSP) and the control stream are brought
  698.         together in a single high-performance computer, the Music Kit
  699.         makes possible an unprecedented level of expressive control.
  700.         (from Documentation/MusicKit+DSP/General/SoundMusicDSP.rtfd)
  701.  
  702.         MusicKit used to be supplied by NeXT as part of NeXTSTEP (pre
  703.         3.0).  It is now maintained by CCRMA and available by FTP from
  704.         ccrma-ftp.stanford.edu.  There are two packages:
  705.  
  706.         pub/MusicKit_4.0.pkg.tar
  707.  
  708.             Class library, header files, documentation, programming
  709.             examples, and a suite of applications (size = 9MB).
  710.  
  711.         pub/MusicKitSource_4.0.pkg.tar
  712.             Source of the MusicKit class library (size = 7MB).
  713.  
  714.     Contact
  715.  
  716.         email: musickit@ccrma.stanford.edu
  717.  
  718.  
  719. ADMINISTRATIVIA
  720.  
  721.     The information in this file comes AS IS, WITHOUT ANY WARRANTY.  You may
  722.     use the information contained in this file or distribute this file, as
  723.     long as you do not modify it, make money out of it or take the credits.
  724.  
  725.     All trademarks appearing in this file are owned by their respective
  726.     owner.  To increase the information content in this file, any indication
  727.     to that effect is not present in the FAQ other than in this paragraph.
  728.  
  729. The first version of this FAQ was written by Bill Shirly, helped by the
  730. feedback and information given to him by a lot of people.  The current
  731. version is maintained by Tiggr, supported by feedback from Glen Diener,
  732. Christopher Lozinski, Sean Luke and a lot of other people.  Mail your bug
  733. reports, comments, suggestions and additions to tiggr@es.ele.tue.nl.
  734.