[comp.lang.objective-c] How's Stepstone/Objective-C doing?

karl@sugar.hackercorp.com (Karl Lehenbauer) (03/31/91)

I'm interested in Objective-C, but I'm wondering about it.  Relative volumes
in the C++ and Objective-C groups shows C++ is getting a lot more attention
on the net; likewise, there are multiple C++ implementations for DOS, none
for O-C that I know of (using DOS as a barometer).

The questions are, are there Objective-C vendors other than Stepstone?
Are there forthcoming affordable implementations for "standard" 
architectures, no matter how offensive those architectures may be?  Does
anyone have a feel for how Stepstone themselves are doing, i.e. will they
still be around a year or two, five years, from now?

-- 
-- uunet!sugar!karl		Keeping 255 messages and deleting 158.
-- 

rkitts@netcom.COM (Rick Kitts) (04/01/91)

In article <1991Mar30.165230.11364@sugar.hackercorp.com> karl@sugar.hackercorp.com (Karl Lehenbauer) writes:
>I'm interested in Objective-C, but I'm wondering about it.  Relative volumes
>in the C++ and Objective-C groups shows C++ is getting a lot more attention
>on the net; likewise, there are multiple C++ implementations for DOS, none
>for O-C that I know of (using DOS as a barometer).
>
>The questions are, are there Objective-C vendors other than Stepstone?
>Are there forthcoming affordable implementations for "standard" 
>architectures, no matter how offensive those architectures may be?  Does
>anyone have a feel for how Stepstone themselves are doing, i.e. will they
>still be around a year or two, five years, from now?
>
>-- 
>-- uunet!sugar!karl		Keeping 255 messages and deleting 158.
>-- 

Well, how timely this post is. I have a sort-of working version of 
Objective-C which I would like to sell at some point in the future. I
called Stepstone, asking them about licensing agreements for the
class library. I don't want to have to re-implement it, and also I
don't want to deviate from whatever 'standard' exists now. Anyway, it
turns out that to license their library I am required to provide them
with my translator for them to QA and approve before I will be able
to use their library. The rationale for this is apparently that the
Stepstone name will be on the class library and they have had
problems with other products they have recommended which resulted in
complaints because the product was broken or dysfunctional in some
way (I did not get the details). I feel that to be completely
ridiculous. My competitor wants to test my program and then tell me
that it is OK to sell it. The point of this then is that I am not
suprised that their are apparently no non-Stepstone implementations of
Objective-C. Having spoken with a few people (buisness types, not
techno-geeks such as myself), they have indicated that to enter into
such an agreement would be 'folly' and 'dangerous'. I would be curious to
know if anyone has elected not to do an Objective-C because of these
licensing arrangements.

By way of a personal note I have to say that the licensing
arrangement for the class library seems to indicate the demise of the
Software-IC concept.  Hitatchi, for instance, does not require that
that they have the right to QA all devices which incorporate some
chip of theirs. Neither does Microsoft require that Stepstone submit
their translator for QA because Stepstone says that it works with
their C compiler. 

Additionally I have been informed that Objective-C is trademarked.
Meaning that I cannot really call my implementation Objective-C.
Rather I would have to call it 'Something: Compatable with
Objective-C(tm)'. I can live with this, but it seems somewhat silly
to me. If anyone has a good idea for what 'Something' should be I
would like to hear it.

With respect to how long they will be around, I have no way of
knowing. I did, however, receive a letter the other day which I was
required to fill out and return. It stated that mailing costs where
getting to be quite large and that if I wasn't using Objective-C
(which I own) actively then please don't return the letter so they
could remove me from their customer data base.

cimarron@erewhon.postgres.Berkeley.EDU (Cimarron D. Taylor </>) (04/01/91)

	Brad Cox gave a talk here at Berkeley a few weeks ago.  I was
	given the impression that he was more interested in library
	developement than language development.  This is part of his
	philosophy of software reusability.

	In particular, when someone asked him why the NeXT machine's
	do not come with the Stepstone class library, he said that
	Jobs wasn't interested in it.  Jobs apparently thought the
	language was more important than the library, while Cox
	believes that the library is more important than the language.

	It is my belief that there is more money to be made, and more
	work to saved, through the development and sale of Objective C
	libraries as opposed to Objective C compilers.  The language
	itself is not really that complicated.  Someone with
	experience selling compiliers (say Borland or Microsoft)
	should easily be able to sell Turbo-Objective-C or whatever.

	Also, the IEOR department at berkeley has an experimental port
	of the Stepstone class library as part of their NeXT port of
	BLOCS, the Berkeley Library of Objects for Control and Simulation.
	I am not clear on what kind of agreement was made as to it's 
	distribution. 

	Cimarron Taylor
	Electronics Research Laboratory / POSTGRES project
	University of California, Berkeley
	cimarron@postgres.berkeley.edu

cox@stpstn.UUCP (Brad Cox) (04/02/91)

In article <1991Mar30.165230.11364@sugar.hackercorp.com> karl@sugar.hackercorp.com (Karl Lehenbauer) writes:
>I'm interested in Objective-C, but I'm wondering about it.  Relative volumes
>in the C++ and Objective-C groups shows C++ is getting a lot more attention
>on the net; likewise, there are multiple C++ implementations for DOS, none
>for O-C that I know of (using DOS as a barometer).

The high interest in better technologies for fabricating gate- and 
block-level components as in C++ should not be confused with technologies,
such as Smalltalk and Objective-C, for assembling software from libraries 
of pre-fabricated chip-level components, or Software-ICs. In other words,
C++ is not a 'competitor' for Objective-C. It is a better C; a basis for
building a better Objective-C.

Objective-C is available on nearly all Unix platforms as well as on DOS and 
OS/2.  The only major platform that we do not presently support is 
Macintosh, and I'm working on that.  It is marketed for DOS platforms by 
Programmers Paradise, by Stepstone, and by Synetics. The latter provides 
browsers and user interface libraries for Windows 3.0, as opposed to 
Stepstone's libraries, with are oriented towards X-Windows. NeXT also
provides its own user interface environment, NeXTStep, which is based on
display postscript.

>The questions are, are there Objective-C vendors other than Stepstone?
>Are there forthcoming affordable implementations for "standard" 
>architectures, no matter how offensive those architectures may be?  Does
>anyone have a feel for how Stepstone themselves are doing, i.e. will they
>still be around a year or two, five years, from now?

Independent Objective-C implementations have been developed by Stepstone 
and by NeXT. These implementations are distributed and supported by
Stepstone, NeXT, Synetics, FSF, and others, including Programmer's
Paradise.

Stepstone will be eight years old this spring. During almost all of this 
time, we've been at the same address; 75 Glen Road; Sandy Hook CT 06482. 
There are plans that I'm aware of to go anywhere but forward.
-- 

Brad Cox; cox@stepstone.com; CI$ 71230,647; 203 426 1875
The Stepstone Corporation; 75 Glen Road; Sandy Hook CT 06482

pfkeb@ebnextk.SLAC.Stanford.EDU (Paul Kunz) (04/02/91)

   Just for the record, there's also an implementation of Objective-C 
for the Amiga.   It was done by someone at Calstate-Sacramento who's
name escapes me at the moment.
   Also the NextStep 2.0 version of the Objective-C compiler allows use
of C++ within an Objective-C object, perhaps making it an Objective-C++
compiler.   So you don't have to choose between Obj-C and C++, one
compiler does both.   Use the right tool for the right job, sometimes
Objective-C is best, sometimes its C++.   With the compiler on the NeXT
you have your choice.   I think this will be released as the GNU 2.0
gcc compiler, but I'm not sure.

brian@babbage.csus.edu (Brian Witt) (04/03/91)

In article <PFKEB.91Apr1203950@ebnextk.SLAC.Stanford.EDU> pfkeb@ebnextk.SLAC.Stanford.EDU (Paul Kunz) writes:
>   Just for the record, there's also an implementation of Objective-C 
>for the Amiga.   It was done by someone at Calstate-Sacramento who's
>name escapes me at the moment.

Guess I should reply.  Yes, I have that Objective-C (tm) like
"translator".  I've ported it to AT&T UNIX (tm).  I have a nice
foundation class set, plus the Collection phylum from Brad Cox's
"Object Oriented Programming: an Evolutionary approach" book.  It
reads version 4 syntax (like the NeXT cubes).  The methods are
sort-of a combinaion of Stepstone and NeXT varitites.  My data
structures are more NeXT-like than Stepstone-like.

I've been working on the system code-wise since May 1989.  (I've
had Dr. Cox's book for much longer.)  Major item left to do is
NeXT's List class.  I also wanna port it to MS-DOS.  However, if
you really need it now, then you can FTP it from babbage.ecs.csus.edu
and try it out yourself!  There is a window attempt example, and
the dependency tree example from Dr. Cox's book.  (Hope he doesn't
mind me using it :-).

(A readme file is attached below)

----------------------------------------------------------------
         brian witt         |   brian@babbage.ecs.csus.edu
    You are what you click  |  (and if you click it twice...)
  Not representing Cal State Sacramento, the ECS dept, or Iraq
----------------------------------------------------------------

^L

====================================================================
  O.C.T.                                            march 1991, bjw

Organization: 12.5% by volume

I have available a PD pre-processor that accepts version 4
syntax (like NeXT and current Stepstone Objective-C(TM)
translators).  It runs currently on my Amiga and AT&T UNIX.

This package is not complete.  I don't archive/activate objects.
The class heirarceez (sic) support the reduced classes of NeXT and
the Collection phylum of stepstone.

Here is a short description of how to FTP the files.  I'll try to 
pull out an overview file, so you know what you are getting yourself
into before the big downloading.  I can make a zoo file available.

-------------------------------

I've uploaded the files for the OCT translator and runtime substrate.
This system sits in front of your ordinary C compiler.  It should run
under AmigaDOS, generic UNIX and MS-DOS.  You may have to configure
some of the paths, though.  The 'cpp' that is included (from DECUS)
has been modified to accept #import directives and // comments!

The entire system of source is located in oct193.tar.Z file.  The 
Amiga executables are in amibin.zoo file.  You may FTP anonymous login
to "babbage.ecs.csus.edu" using anonymousity :-)...

% list OCT
total 2160
-rw-r--r--   1 brian    agnus      60369 Oct 15 16:36 bens.zoo
-rw-r--r--   1 brian    agnus       4336 Mar  2 16:56 flist.193
-rw-r--r--   1 brian    agnus     560958 Mar  2 15:46 oct192.tar.Z
-rw-r--r--   1 brian    agnus     466283 Mar  2 16:58 oct193.tar.Z
-rw-r--r--   1 brian    agnus       1549 Mar  2 15:40 readme.txt

"flist.193" is a table of contents for the tar file.
Most of the stored files are text except for those in the "lib" and "bin"
directories.  The files "main16" and "main32" are Amiga executables.
Amiga runfiles have 0x000003F2 as their first longword.


If you have any troubles getting these files, drop me a line.

--- Laws seldom stop politicians!
--- brian witt
    brian@babbage.ecs.csus.edu    or    seeker!rael!aleks

--
----------------------------------------------------------------
         brian witt         |   brian@babbage.ecs.csus.edu
    You are what you click  |  (and if you click it twice...)
  Not representing Cal State Sacramento, the ECS dept, or Iraq

telfeyan@zip.eecs.umich.edu (Roland Telfeyan) (04/03/91)

In message <CIMARRON.91Apr1004809@erewhon.postgres.Berkeley.EDU>
cimarron@erewhon.postgres.Berkeley.EDU (Cimarron D. Taylor </>) writes:

> Brad Cox gave a talk here at Berkeley a few weeks ago.  I was
> given the impression that he was more interested in library
> developement than language development.  This is part of his
> philosophy of software reusability.
> 
> In particular, when someone asked him why the NeXT machine's
> do not come with the Stepstone class library, he said that
> Jobs wasn't interested in it.  Jobs apparently thought the
> language was more important than the library, while Cox
> believes that the library is more important than the language.

That's all rhetoric.  The real reason NeXT decided not to include
the Stepstone class library is because it was too buggy.  Believe
me, I've been programming the NeXT since its Sun cross-development
system (System 0.3) in 1988, and at that time it *was* included.
Our application made extensive use of it.  I forget whether it was
in 6.0 or 8.0 that the Stepstone class library was removed.  I got
the impression NeXT got tired of taking bug reports for Stepstone!
So NeXT substituted its own foundation library, a smaller set of
objects, but useful and reliable.

Roland Telfeyan                             roland@cpat.umich.edu
School of Music                             roland@gomidas.mi.org
University of Michigan      1100 Baits, Ann Arbor, MI  48109-2085

salc@aristotle.shearson.com (Sal Cataudella) (04/10/91)

In article <6737@stpstn.UUCP> cox@stpstn.UUCP (Brad Cox) writes:
   In article <1991Mar30.165230.11364@sugar.hackercorp.com> karl@sugar.hackercorp.com (Karl Lehenbauer) writes:
 >>I'm interested in Objective-C, but I'm wondering about it.  Relative volumes
 >>in the C++ and Objective-C groups shows C++ is getting a lot more attention
 >>on the net; likewise, there are multiple C++ implementations for DOS, none
 >>for O-C that I know of (using DOS as a barometer).

 > The high interest in better technologies for fabricating gate- and 
 > block-level components as in C++ should not be confused with technologies,
 > such as Smalltalk and Objective-C, for assembling software from libraries 
 > of pre-fabricated chip-level components, or Software-ICs. 

Please explain why C++'s implementation of the object oriented paradigm cannot
be used to implement software ICs. Please explain why a library of C++ classes
(such as NIHCL or Interviews) is not useful in the same way that an
objective-c class library would be.

 >In other words,
 > C++ is not a 'competitor' for Objective-C. It is a better C; a basis for
 > building a better Objective-C.

If C++ only extended C with function overloading, reference variables, and
other *non-objected-oriented* extensions, I could see your point, however
C++ has its own way of implementing object-oriented paradigms such as
multiple inheritance, and runtime based message selection thru the use of
virtual functions. It is this side of C++ that competes head on with
objective-c's object-oriented features. If your point is that objective-c's
implementation of OO is better than C++'s then argue on that level. But
realize that C++ object-oriented features allow you to create software-ics
as well.


--Sal

--
 Sal Cataudella	
 Internet: salc@alfred.shearson.com
 UUCP:     ...!uunet!slcpi!alfred!salc
 (212) 464-3871

bright@nazgul.UUCP (Walter Bright) (04/11/91)

In article <1991Mar31.192347.4953@netcom.COM> rkitts@netcom.COM (Rick Kitts) writes:
/The point of this then is that I am not
/suprised that their are apparently no non-Stepstone implementations of
/Objective-C. 
/I would be curious to
/know if anyone has elected not to do an Objective-C because of these
/licensing arrangements.

I did. Back some years ago, I investigated whether to do C++ or Objective-C
as an extension to the Datalight (now Zortech) C compiler. I picked
C++ primarilly because it was an open language, and I would not get sued
for implementing it and calling it C++. At that time, it was a matter of
great debate which one was going to succeed. I strongly feel that AT&T
made the right (!) choice in making it open, and that was the single biggest
factor in the subsequent success of C++.

I suspect that if the Eiffel and Actor people had sold the *source*
to their compiler rather than the binaries, their languages would be much
more successful...

noren@dinl.uucp (Charles Noren) (04/12/91)

In article <SALC.91Apr9145833@aristotle.shearson.com> salc@alfred.shearson.com writes:
>Please explain why C++'s implementation of the object oriented paradigm cannot
>be used to implement software ICs. Please explain why a library of C++ classes
>(such as NIHCL or Interviews) is not useful in the same way that an
>objective-c class library would be.

I'll horn in on this conversation...
I have used Objective-C and am currently using C++.
C++ can be used to create software IC's with polymorphic member functions.
NIHCL is a good example of such a software IC that corresponds with
ICPak 101.  However, Objective-C has some significant advantages over
C++ that should not be overlooked:

1.  Objective-C from Stepstone comes with several mature, vendor supported
    class libraries.  Comparing just the languages is much like getting
    into arguments about which microprocessor chips are better.  What
    really counts is the development environment your given.  With
    Objective-C you get the vendor supported Foundation classes (similar
    to C++'s NIHCL), the window class library and the 2-D graphics library.
    It should also be noted that the Foundation Class library (ICpak 101)
    comes bundled with Objective-C.  For C++ there is NIHCL (National
    Institutes of Health Class Library), a Smalltalk-like class library.
    We are using NIHCL in our project, and I think the developers of it
    did a remarkable job!  HOWEVER, no C++ compiler that I know of supports
    it.  Sure, it comes in the Saber C++ distribution (along with other
    C++ compiler vendors), but it is listed as unsupported software -- i.e.
    no guarantees that it will even compile under future compiler releases.
    This does not give me a warm fuzzy feeling.  Also, because NIHCL is
    unsupported, there is no vendor that I can call when I encounter
    problems.  There is a nice book published by the makers of NIHCL, and
    there is the source of NIHCL, but the NIHCL software is so large that
    the current documentation needs to be expanded into many volumes before
    I can begin to feel comfortable with NIHCL.  I've also found that not
    all C++ (Cfront 2.0, 2.1 compatable) compilers will compile NIHCL.
    The same problems with NIHCL goes with Interviews.

    With the vendor supported class libraries from Stepstone, you can easily
    give yourself an extra 6 month++ head start on a project over C++ just
    because the classes libraries from Objective-C are mature and vendor
    supported.

2.  Langauge features.  Objective-C was easier to learn (for me at least) than
    C++.  Objective-C has just a few additions to the C language.  With C++
    I feel that there is much going behind the scenes that I sometimes lose
    sleep wondering what I'm missing that will bite me later.  Objective-C also
    has the ability to deal more directly with "meta-class" issues that C++
    cannot directly handle.  I can ask if a class is derived from another class.
    This can be done in C++, but only if you build that into each class (like
    NIHCL).  I can also ask if an Objective-C class can respond to a given
    method or member function and get a yes or no answer.  C++ does not do this.

    Certainly C++ does have a lot of interesting features, such as multiple-
    inheritence, operator overloading, etc. -- and being a hacker at heart I
    love to play with these things.  C++ also supports stronger type-checking.
    However, I personally prefer the the ability of getting to "meta-class" things
    of Objective-C over the enhancements found in C++.

3.  Tools.  The C++ development environment has made major strides in the past
    six months!  We are using Saber C++ with its integrated development environment
    (which includes an interpreter, debugger, classs browser) and it IS NICE.
    However, I like the Stepstone class browser better (somewhere around here
    I wrote a review about the Stepstone browser).

These are some of my thoughts about the Objective-C/C++ religious war.  I'm biased
towards Objective-C.  These opinions reflect that bias, but no one should dismiss
using Objective-C.



-- 
Chuck Noren
NET:     dinl!noren@ncar.ucar.edu
US-MAIL: Martin Marietta I&CS, MS XL8058, P.O. Box 1260,
         Denver, CO 80201-1260
Phone:   (303) 977-1646

cox@stpstn.UUCP (Brad Cox) (04/13/91)

In article <SALC.91Apr9145833@aristotle.shearson.com> salc@alfred.shearson.com writes:
>
>Please explain why C++'s implementation of the object oriented paradigm cannot
>be used to implement software ICs. Please explain why a library of C++ classes
>(such as NIHCL or Interviews) is not useful in the same way that an
>objective-c class library would be.

This is discussed in far greater detail than I could ever do here in IEEE
Software, Nov 1990, "Planning the Software Industrial Revolution". The
difference boils down to the difference between a fabrication technology,
such as a silicon fab line and/or C++, and an assembly technology such as
a soldering gun and/or Smalltalk/Objective-C.

Please send flames to /dev/null. My point is not that assembly technologies
are better or worse than fabrication technologies. My point is that it is
nonsense to debate that point. Neither makes sense without the other. That is
why Objective-C does not prevent access to C.
:
-- 

Brad Cox; cox@stepstone.com; CI$ 71230,647; 203 426 1875
The Stepstone Corporation; 75 Glen Road; Sandy Hook CT 06482