1996-04-17 20:01:09 +00:00
|
|
|
* Gnustep Base Library
|
1996-01-22 23:22:11 +00:00
|
|
|
|
1996-04-17 20:01:09 +00:00
|
|
|
The Gnustep Base Library (libobjects) is a library of
|
1996-01-22 23:22:11 +00:00
|
|
|
general-purpose, non-graphical Objective C objects written by
|
1996-04-17 20:17:45 +00:00
|
|
|
Andrew Kachites McCallum and designed in the Smalltalk tradition. It
|
1996-01-22 23:22:11 +00:00
|
|
|
includes collection objects for maintaining groups of objects and C
|
|
|
|
types, byte streams for I/O to various destinations, coders for
|
|
|
|
formating objects and C types to byte streams, ports for network
|
|
|
|
packet transmission, remote object messaging support, pseudo-random
|
|
|
|
number generators, and time handling facilities.
|
|
|
|
|
|
|
|
|
1996-04-17 20:01:09 +00:00
|
|
|
* Gnustep Base Library
|
1996-01-22 23:22:11 +00:00
|
|
|
|
1996-04-17 20:01:09 +00:00
|
|
|
The Gnustep Base Library (libobjects) is a library of
|
1996-01-22 23:22:11 +00:00
|
|
|
general-purpose, non-graphical Objective C objects designed in the
|
|
|
|
Smalltalk tradition. It includes collection objects for maintaining
|
|
|
|
groups of objects and C types, byte streams for I/O to various
|
|
|
|
destinations, coders for formating objects and C types to byte
|
|
|
|
streams, ports for network packet transmission, remote object
|
|
|
|
messaging support, pseudo-random number generators, and time handling
|
1996-04-17 20:17:45 +00:00
|
|
|
facilities. It is being written by Andrew Kachites McCallum.
|
1996-01-22 23:22:11 +00:00
|
|
|
|
|
|
|
|
1996-04-17 20:01:09 +00:00
|
|
|
* Gnustep Base Library (libobjects)
|
1996-01-22 23:22:11 +00:00
|
|
|
|
1996-04-17 20:17:45 +00:00
|
|
|
Andrew Kachites McCallum is writing the Gnustep Base Library, a
|
1996-01-22 23:22:11 +00:00
|
|
|
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, byte streams for I/O to
|
|
|
|
various destinations, coders for formating objects and C types to byte
|
|
|
|
streams, ports for network packet transmission, remote object
|
|
|
|
messaging support, pseudo-random number generators, and time handling
|
1996-04-17 20:17:45 +00:00
|
|
|
facilities. It is being written by Andrew Kachites McCallum.
|
1996-01-22 23:22:11 +00:00
|
|
|
|
|
|
|
|
1996-04-17 20:01:09 +00:00
|
|
|
* Gnustep Base Library
|
1996-01-22 23:22:11 +00:00
|
|
|
|
1996-04-17 20:01:09 +00:00
|
|
|
The Gnustep Base Library (@code{libobjects}) is a library of
|
1996-01-22 23:22:11 +00:00
|
|
|
general-purpose, non-graphical Objective C objects written by
|
1996-04-17 20:17:45 +00:00
|
|
|
Andrew Kachites McCallum. It includes collection objects for maintaining
|
1996-01-22 23:22:11 +00:00
|
|
|
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, and time handling
|
|
|
|
facilities. Contact @samp{mccallum@gnu.ai.mit.edu}.
|
|
|
|
|
|
|
|
|
|
|
|
|
1996-04-17 20:01:09 +00:00
|
|
|
* Gnustep Base Library
|
1996-01-22 23:22:11 +00:00
|
|
|
|
1996-04-17 20:01:09 +00:00
|
|
|
The Gnustep Base Library (libobjects) is a library of
|
1996-01-22 23:22:11 +00:00
|
|
|
general-purpose, non-graphical Objective C objects written by
|
1996-04-17 20:17:45 +00:00
|
|
|
Andrew Kachites McCallum. What `libg++' is to GNU's C++, `libobjects' is to
|
1996-01-22 23:22:11 +00:00
|
|
|
GNU's Objective C.
|
|
|
|
|
|
|
|
The library features collection objects for maintaining groups of
|
|
|
|
objects and C types, byte streams for I/O to various destinations,
|
|
|
|
coders for formating objects and C types to byte streams, ports for
|
|
|
|
network packet transmission, remote object messaging support,
|
|
|
|
pseudo-random number generators, and time handling facilities.
|
|
|
|
|
|
|
|
The heirarchy of collection objects are similar in spirit to
|
|
|
|
Smalltalk's collections. A deep inheritance heirarchy provides good
|
|
|
|
uniformity of access to members across different collection classes.
|
|
|
|
All collections can hold simple C types such as int's and floats, as
|
|
|
|
well as Objects. The collection classes include simple collections
|
|
|
|
(Set, Bag), collections with contents accessible by unordered keys
|
|
|
|
(Dictionary, MappedCollector), collections with ordered contents
|
|
|
|
(Array, LinkedList, BinaryTree, RBTree, SplayTree). There is also a
|
|
|
|
DelegatePool object that can forward messages it receives to an
|
|
|
|
arbitrary number of Delegates.
|
|
|
|
|
|
|
|
Stream objects provide a consistent interface for reading and writing
|
|
|
|
bytes. `StdioStream' objects work with files, file descriptors, FILE
|
|
|
|
pointers and pipes to/from executables. `MemoryStream' objects work
|
|
|
|
with memory buffers. There are methods for writing arbitrary n-length
|
|
|
|
buffers, newline-terminated lines, and printf-style formated strings.
|
|
|
|
|
|
|
|
Coders provide a formatted way of writing to Streams. After a coder
|
|
|
|
is initialized with a stream, the coder can encode/decode Objective C
|
|
|
|
objects and C types in an architecture-independent way. The currently
|
|
|
|
available concrete coder classes are `BinaryCoder', for reading and
|
|
|
|
writing a compact stream of illegible bytes, and `TextCoder', for
|
|
|
|
reading and writing human-readable text (which you can also process
|
|
|
|
with `perl', `awk', or whatever scripting language you like).
|
|
|
|
|
|
|
|
Coders and streams can be mixed and matched so that programmers can
|
|
|
|
choose the destination and the format separately.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The current version is 0.1, the low number indicating that the library
|
|
|
|
is still in flux. Future version will include String objects and
|
|
|
|
before allocation/dealocation conventions.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
see ~rms/gnuorg/status
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Here is the simple description:
|
|
|
|
|
1996-04-17 20:01:09 +00:00
|
|
|
* Gnustep Base Library
|
1996-01-22 23:22:11 +00:00
|
|
|
|
1996-04-17 20:01:09 +00:00
|
|
|
The Gnustep Base Library (@code{libobjects}) is a library of
|
1996-01-22 23:22:11 +00:00
|
|
|
general-purpose, non-graphical Objective C objects written by
|
1996-04-17 20:17:45 +00:00
|
|
|
Andrew Kachites McCallum. It includes collection objects for maintaining
|
1996-01-22 23:22:11 +00:00
|
|
|
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, and time handling
|
|
|
|
facilities. It is known to work on i386, m68k, SPARC, MIPS, and
|
|
|
|
RS6000. Contact the author at @samp{mccallum@gnu.ai.mit.edu}.
|
|
|
|
|
|
|
|
|
|
|
|
(GNU's Flashes)
|
|
|
|
|
|
|
|
* New Library (on the Languages Tape?)
|
|
|
|
|
1996-04-17 20:01:09 +00:00
|
|
|
The Gnustep Base Library (@code{libobjects}) has been added.
|
1996-01-22 23:22:11 +00:00
|
|
|
See ``GNU Software'' and ``Forthcoming GNUs'' for more information.
|
|
|
|
|
|
|
|
|
|
|
|
(Forthcoming GNUs)
|
|
|
|
|
1996-04-17 20:01:09 +00:00
|
|
|
* Gnustep Base Library
|
1996-01-22 23:22:11 +00:00
|
|
|
|
|
|
|
Future versions will have String objects that are integrated into the
|
|
|
|
Collection object hierarchy, a better allocation/deallocation
|
|
|
|
mechanism, improved features for distributed objects (including a
|
|
|
|
back-end that uses Mach ports instead of sockets), more extensive
|
|
|
|
random number generator facilities, and ports to more machines.
|
|
|
|
Volunteers are needed for additional projects; contact
|
|
|
|
@code{mccallum@gnu.ai.mit.edu}.
|