From: Nigel.Williams@admin.utas.edu.au (Nigel Williams)
Subject: OOPC
Followup-To: comp.sys.mac.oop.misc
Organization: University of Tasmania
Date: Wed, 16 Dec 1992 22:03:36 GMT

This was posted to OODL.SIG recently; I await the demo disk with eager
anticipation. Posted with emine's permission.

Nigel.


Date: 12 Dec 92 06:35 GMT
From: EMINE@applelink.apple.com (Electron Mining,G. Odom,PAS)
Subject: OOPC
To: OODL.SIG$@applelink.apple.com (OODL SIG group address)

From:  Electron Mining (emine; 415-341-2400 or 800-453-1121)
Regarding: OOPC Product Information - Macintosh Version
Date:  December 11, 1992
 
 
Overview
 
OOPC is a high-level toolkit for creating professional object-oriented
Macintosh applications quickly.  OOPC has a complete class library for easy
application development.  OOPC also has an object system that turns
ANSI-standard C into a powerful, dynamic object-oriented programming
language;
power far beyond C++, superior to Dylan, but much easier to learn and use. 
Now
you can create powerful, professional applications more quickly than with
any
other software development toolkit, and you can use MPW or THINK C to do
it.
 
 
Class Library
 
The OOPC class library provides extensive support for rapid application
development.  OOPC has automatic document handling: a document
automatically
displays itself in a window, manages offscreen bitmap memory, can save
itself
to file and restore itself, print itself, handle scrap operations, or undo
an
action.
 
OOPC has complete support for an application user interface.  You can
expect
any class library to let you create and handle windows, menus, dialogs, and
so
on.  OOPC has classes for tear-off menus, floating windows, plus tool,
pattern
and color palettes.  Pop-up menus are a standard control.  All modal
dialogs
you create are automatically movable modal dialogs.  User interaction with
all
dialog items is automatic; you can create, show, and handle a dialog in two
lines of code.  OOPC gives you more user interface features, and makes them
easier to use.
 
OOPC includes an object-oriented graphics package.  OOPC also has styled
text
edit that works on any Macintosh in the world.
 
OOPC has classes for object-oriented databases.  There are classes for
collections, lists, queues and stacks. Any object can be linked to another
dynamically to build an object-oriented database.  Garbage collection for
all
objects is built in.
 
OOPC offers unparalleled event processing capability.  OOPC has extensible,
multiple-priority event handling.  Operating system events are at one
level.
There is a higher level (ASAP), and lower level event queues.  There is
also a
timer event queue for periodically repeating events.  You can create new
event
queues at any level you need.  Also, events at any level can be scripted.
 
OOPC comes with object persistence built in.  Objects are saved to file and
restored for you.  Object persistence for new classes is automatic if the
memory and file images are identical, and requires very few lines of code
if
what's on file differs from object data.
 
 
Object System
 
OOPC's object system has multiple inheritance, flexible class-object data
declaration, dynamic class definition, and method dispatch control. 
Because
OOPC uses standard C, this power is packaged in a way that is easy to learn
to
use, and lets you take full advantage of object-oriented power simply and
easily.
 
With flexible class-object data declaration, a class may have its own data
structure, and an object may have its own methods, different from (or in
addition to) those specified by its class.  You might want class data to be
a
common information pool for other classes and objects.  Or you might want
to
define methods for objects, to further refine their behavior.  When a user
selects a menu item, for example, a specific menu item object method could
be
called to handle that selection.
 
The object system is fully dynamic: everything happens at run-time.
Inheritance and methods can be changed at any time.  This gives you great
flexibility in letting classes and objects adapt to a changing environment.
 
Method dispatch control means you can dispatch to multiple methods in a
single
function call in whatever order you need.  Dispatch control maximizes code
use
with minimum overhead.
 
OOPC's flexibility means you can construct software building blocks the way
you
want, to get the job done your way.  No limits.  C++ can't touch this.
 
 
Memory Management
 
OOPC memory management is blazing.  After using a document for a couple of
minutes, OOPC has been clocked at over one hundred (100) times faster than
Macintosh OS memory management for pointers, and twenty (20) faster than
handles.  These factors are multiples, not percent!  This is because OOPC
memory management is optimized for handling a large number of blocks, while
the
Mac memory manager bogs down as more blocks are allocated.  All
object-oriented
programs use thousands of blocks, so any object-oriented development tool
that
uses Macintosh memory management suffers a heavy toll.  OOPC speeds on by.
 
 
Debugging Tools
 
The most important debugging tool is a way to trace program execution, so
you
can follow what's going on.  OOPC can automatically create an execution
trace
file for you.  OOPC also includes an object browser that hooks into the
THINK C
Debugger: you can see an object in its own data window with a single click
in
the Debugger data window.  And the manual includes a section on debugging
tips
and techniques.  No other development environment makes it as easy to find
and
fix problem code.
 
 
Comprehensive Manual
 
OOPC comes with an easy-to-read 420-page manual that explains everything
you
need to know about programming the Macintosh using OOPC.  The manual
clearly
marks important technical tips and reference sections, so reading and
referencing the manual are even easier.  The index has over 2000 entries,
making it easy to refer back quickly to the topics you want to review.
 
 
The Bottom Line
 
There is much more to OOPC: the consistent use of simple verb functions,
such
as act and draw, for all class methods; exceptional exception handling;
automatic performance profiling.  The feature list goes on and on.  But
what's
important is that this is all harnessed power: easy to learn and simple to
use,
but when you need more, the depth is there.
 
We want OOPC to work for you.  You get 100% full source code and free
technical
support.
 
You can use OOPC with THINK C or MPW C to develop Macintosh applications
faster
than ever before.  A single-user license is $350; no royalty or further
licensing payments.
 
We also want you to know that Electron Mining is on the move with OOPC,
porting
it to all popular operating system environments.  We're working on the
Windows
version now, and UNIX is coming after that.
 
Contact Electron Mining electronically at emine or emine@aol.com, or by
phone
at 415-341-2400 or 800-453-1131.  We can send you a demo disk that proves
OOPC's power and ease, and provides you with more information to make an
informed decision.  Contact us today about OOPC.
 
Newsgroups: comp.sys.mac.oop.misc