benson@blake.acs.washington.edu (Dan Benson) (02/23/90)
I've been using Digitalk's Smalltalk/V 286 but would like to be able to go to other platforms eventually (like the new IBM RS/6000 workstations) so I am thinking about ParcPlace's Smalltalk-80. I was told that Smalltalk-80 is a superset of Digitalk's Smalltalk and that it was more portable between platforms. I'd like to hear from experienced users how they feel about ParcPlace's product (apparently they like to call it Objectworks for Smalltalk-80 instead of simply Smalltalk-80). From what I know, Digitalk and ParcPlace are the two main Smalltalk producers. Are there any more that support popular platforms? Basically, I'd like to hear your impressions of the various Smalltalk systems, both good and bad. Please email responses directly to me and I can repost a summary if there is any interest on the net. Thanks, -- | Dan Benson benson@ee.washington.edu | | Dept. of Elec. Engr., FT-10 | | University of Washington | | Seattle, WA 98195 |
woods@robohack.UUCP (Greg A. Woods) (02/24/90)
In article <5888@blake.acs.washington.edu> benson@blake.acs.washington.edu (Dan Benson) writes: > I've been using Digitalk's Smalltalk/V 286 but would like to be able to > go to other platforms eventually (like the new IBM RS/6000 workstations) > so I am thinking about ParcPlace's Smalltalk-80. It is certainly nice! The only problem is its limited portability at this point. I understand it only runs on Sun's and DEC 3100's. > I was told that Smalltalk-80 is a superset of Digitalk's Smalltalk and > that it was more portable between platforms. I'd like to hear from > experienced users how they feel about ParcPlace's product (apparently > they like to call it Objectworks for Smalltalk-80 instead of simply > Smalltalk-80). I'm not a user, just a fan.... (I spent some time at their booth at UniForum W90-DC) Digitalk's "smalltalk" is a subset/re-implementation of Smalltalk-80. ParcPlace is a collection of former Xerox employees. They have purchased rights for full Smalltalk-80, and enhanced it considerably. It is now a real commercial product, and a useable one at that. ObjectWorks is the programming environment traditionally thought of as part of the Smalltalk-80 language. Xerox have in fact bought it back and are using it to develop some really neat new applications. > From what I know, Digitalk and ParcPlace are the two main Smalltalk > producers. Are there any more that support popular platforms? As far as I'm concerned Xerox and ParcPlace are the only producers of the Smalltalk-80 language! I beleive the Xerox original version runs on more platforms at this time. It is reasonably priced as well. > Basically, I'd like to hear your impressions of the various Smalltalk > systems, both good and bad. Please email responses directly to me and > I can repost a summary if there is any interest on the net. I used Digitalk/V some time ago on a 386 system. It was fast and usable, but I had some major problems with it. The allowance of a one or two button mouse was a real pain in the neck. They should have forced a three button one! The language had a few quirks. The compiler was not written in smalltalk. The set of primitives was all different (i.e. not bytecodes). The debugger was severely limited as such. The browsers were definitely subsets, and much functionality was missing. My prior experience with Smalltalk was on a Xerox Dolphin. If you want Smalltalk, use Smalltalk, not some imitation! The same goes for ParcPlace's Objectworks for C++. It's not Smalltalk, just a neat programming environment for C++. -- Greg A. Woods woods@{robohack,gate,eci386,tmsoft,ontmoh}.UUCP +1 416 443-1734 [h] +1 416 595-5425 [w] VE3-TCP Toronto, Ontario; CANADA
kentb@argosy.UUCP (Kent Beck) (02/27/90)
This is in response to someone who said that Digitalk Smalltalk was not "real". Both Digitalk and ParcPlace's versions of Smalltalk are "real" in the sense that both support the same style of programming, have many functionally equivalent tools, and use the same source language. They are available on different platforms, with different pricing strategies, and different target audiences. To say that one is more real than the other is to ignore the intentional differences between the products. Kent
dg@sisyphus.sybase.com (David Gould) (02/28/90)
In article <1990Feb24.144603.2644@robohack.UUCP> woods@robohack.UUCP (Greg A. Woods) writes: > ... >Digitalk's "smalltalk" is a subset/re-implementation of Smalltalk-80. >ParcPlace is a collection of former Xerox employees. They have >purchased rights for full Smalltalk-80, and enhanced it considerably. > ... >As far as I'm concerned Xerox and ParcPlace are the only producers of >the Smalltalk-80 language! I beleive the Xerox original version runs >on more platforms at this time. It is reasonably priced as well. > ... Digitalk Smalltalk is a real implementation of the Smalltalk-80 language. It is the environment and class library that are somewhat different. Also, for those of us spending our own money, ParcPlace at $695 and up is not reasonably priced compared to Digitalk at $75 and up. >I used Digitalk/V some time ago on a 386 system. It was fast and >usable, but I had some major problems with it. The allowance of a one >or two button mouse was a real pain in the neck. They should have >forced a three button one! The language had a few quirks. The >compiler was not written in smalltalk. The set of primitives was all >different (i.e. not bytecodes). ... - I expect that the ParcPlace Smalltalk-80 on the Mac uses a one button mouse as does Digitalk Smalltalk. I personally like two buttons best, one 2cd and hate three, but software must adapt to the available hardware. - The Digitalk compiler is written in Smalltalk, but I agree it would have been much nicer if they had provided the source too. - Who cares about bytecodes? Why? This is purely an implementation issue, not a language issue. - dg ------ All opinions are mine and may or may not represent Sybase Inc. ------ David Gould dg@sybase.com {sun,lll-tis,pyramid,pacbell}!sybase!dg (415) 596-3414 6475 Christie Ave. Emeryville, CA 94608
johnson@p.cs.uiuc.edu (02/28/90)
I will argue with Greg Woods a little. ParcPlace is the owner of the Smalltalk-80 trademark. The latest version of Smalltalk-80, 2.5, runs on Macs, 386 based machines, Sun 3s and Sun 4s, and some HP machines. It is very portable, and would run on more machines if ParcPlace wanted it to sell it on more machines. 2.5 has all sorts of nice features, such as exception handling and a good binary object storage system. Smalltalk V, by Digitalk, is also nice. Smalltalk V is a smaller system, and runs well on smaller machines. Smalltalk-80 does not run well on smaller machines. On the other hand, Smalltalk V has a smaller class library, so Smalltalk-80 is putting the space it consumes to a good use. Smalltalk V on a Mac looks like a Mac application, while Smalltalk V on OS/2 looks like a Presentation Manager application. As you might expect, the Mac and OS/2 versions of Smalltalk V are not completely compatible. On the other hand, you can use the exact same image for Smalltalk-80 on the Mac, the Sun 3, and the Sun 4. Of course, the resulting programs don't look like anything else on the Mac or the Suns. Originally Smalltalk-80 was around a thousand dollars and Smalltalk V was under a hundred dollars, so there are probably more Smalltalk V users than Smalltalk-80 users. ParcPlace has lowered their prices and Digitalk raised theirs, so the prices are not so different now. Both systems are nice. I am more familiar with Smalltalk-80, so it is not surprising, and probably not significant, that I prefer it. I talk with lots of companies that use Smalltalk-V, so you will be in good company no matter which path you take. Ralph Johnson - University of Illinois at Urbana-Champaign
new@udel.edu (Darren New) (03/01/90)
By the way, contrary to an earlier post, Objectworks is not a C++ development system. It is Smaltalk-80 Version 2.5 from ParcPlace. Unless ParcPlace is using Objectworks to mean two different systems or unless somebody is stepping on sombody else's trademarks, Objectworks is Smalltalk, not C++. -- Darren
hansell@oboe.cis.ohio-state.edu (Timothy Hansell) (03/01/90)
In article <12527@nigel.udel.EDU> new@udel.edu (Darren New) writes: >By the way, contrary to an earlier post, Objectworks is not a C++ development >system. It is Smaltalk-80 Version 2.5 from ParcPlace. Unless ParcPlace >is using Objectworks to mean two different systems or unless somebody is >stepping on sombody else's trademarks, Objectworks is Smalltalk, not C++. > -- Darren Actually, Objectworks is the name that ParcPlace is applying to the underlying environment ( in ST-80 lingo the virtual-machine ) and they have used that environment to create a programming environment for C++ ( which was supposed to be called Synergy ). Thus what was Smalltalk-80 is now Objectworks for Smalltalk and what was to have been synergy is Objectworks for C++ The images is built up on top of the virtual machine, and for Smalltalk the compiler compiles st-80 into the byte-codes that the virtual machine executes, while in C++ the compiler is a C++ compiler into byte-codes. Given the scheme they have implemented Smalltalk in they could implement just about any language this way ( provided it is object based ) -tim Tim Hansell hansell@cis.ohio-state.edu P.O. Box 687 South Charleston, Ohio, 45268
atoenne@laura.UUCP (Andreas Toenne) (03/01/90)
In article <77720@tut.cis.ohio-state.edu> Tim Hansell <hansell@cis.ohio-state.edu> writes: >The images is built up on top of the virtual machine, and for Smalltalk >the compiler compiles st-80 into the byte-codes that the virtual machine >executes, while in C++ the compiler is a C++ compiler into byte-codes. > >Given the scheme they have implemented Smalltalk in they could implement >just about any language this way ( provided it is object based ) WRONG! Objectworks for C++ contains! the AT&T C++ compiler. The Smalltalk80 part of Cynergy is used for it's superior user-interface only. As far as I'm told, the C++ compiler (and a special debugger with certain hooks) is used to parse, compile and run the C++ software. Cynergy uses the parsed information to maintain the C++ sources in handy chunks and allows for cross-referencing etc. Concerning Objectworks for Smalltalk80.... it runs on DEC3100 and PCS RCU too. Additionaly the version 2.3 runs on PCS Cadmus and the Atari ST. (A port to 2.5 is planned but not yet scheduled) Andreas Toenne atoenne@unido.uucp
johnson@p.cs.uiuc.edu (03/02/90)
Tim Hansell is almost right about Objectworks. ParcPlace does have two products, Objectworks for Smalltalk-80 and Objectworks for C++. However, the C++ system does NOT compile C++ into byte-codes. Instead, Objectworks for C++ is a programming environment for C++ that is written in Smalltalk. It uses regular C++ compilers (in particular, the AT&T one), but executes them on the command of the Smalltalk program. Of course, Smalltalk is invisible to the user of Objectworks for C++, so C++ programmers don't have to be frightened that they will be forced to learn a better language! Ralph Johnson -- Smalltalk and C++ programmer
jlhaferman@l_cae05.icaen.uiowa.edu (Jeffrey Lawrence Haferman) (03/02/90)
From article <80500090@p.cs.uiuc.edu>, by johnson@p.cs.uiuc.edu: > > Tim Hansell is almost right about Objectworks. ParcPlace does have > two products, Objectworks for Smalltalk-80 and Objectworks for C++. > However, the C++ system does NOT compile C++ into byte-codes. > Instead, Objectworks for C++ is a programming environment for C++ > that is written in Smalltalk. It uses regular C++ compilers (in > particular, the AT&T one), but executes them on the command of > the Smalltalk program. Of course, Smalltalk is invisible to the > user of Objectworks for C++, so C++ programmers don't have to be > frightened that they will be forced to learn a better language! > Could someone please tell me what machines Objectworks for C++ is available for? Specifically, I am looking for a C++ for the Macintosh. I know Objectworks for Smalltalk-80 is available for the Mac, but the only C++ compiler for the Mac I know of is part of MPW. Jeff Haferman jlhaferman@icaen.uiowa.edu University of Iowa Department of Mechanical Engineering
benson@blake.acs.washington.edu (Dan Benson) (03/03/90)
In article <776@ns-mx.uiowa.edu> jlhaferman@l_cae05.icaen.uiowa.edu (Jeffrey Lawrence Haferman) writes: > >Could someone please tell me what machines Objectworks for C++ is available >for? Specifically, I am looking for a C++ for the Macintosh. I know >Objectworks for Smalltalk-80 is available for the Mac, but the only >C++ compiler for the Mac I know of is part of MPW. > >Jeff Haferman jlhaferman@icaen.uiowa.edu I just got some literature from ParcPlace and they only list Objectworks for C++ (v 1.0) for the Sun-3. It lists for $2495. You can verify it by calling ParcPlace at (415) 691-6715 -- | Dan Benson benson@ee.washington.edu | | Dept. of Elec. Engr., FT-10 | | University of Washington (206) 685-7567 | | Seattle, WA 98195 |
khaw@parcplace.com (Mike Khaw) (03/04/90)
Actually... ParcPlace Systems has (a) Objectworks for Smalltalk-80, which used to be called just "Smalltalk-80". (b) Objectworks for C++, whose early prototypes were called Cynergy (a pun on "C" +(+) "synergy"). The intent of the name "Objectworks" is, among other things (a) to emphasize that the Smalltalk-80 product is not only a language, but an integrated development environment. (b) to assert the "family resemblance" between Objectworks for Smalltalk-80 and and Objectworks for C++; i.e., that the latter is also an integrated development environment for an object-oriented programming language. (c) to capitalize on market interest in object-oriented products by including the word "object" in the products' names. (d) to make clearer to those unacquainted with Smalltalk-80 that it is an object-oriented programming system (we've actually had people ask if Smalltalk was a data communications application). So, as San Franciscans say "don't call it 'Frisco", ParcPlace people say "don't call it Objectworks" - we won't know whether you mean "... for Smalltalk-80" or "... for C++" until you've established the context. -- Mike Khaw ParcPlace Systems, Inc., 1550 Plymouth St., Mountain View, CA 94043 Domain=khaw@parcplace.com, UUCP=...!{uunet,sun,decwrl}!parcplace!khaw
mdr@reed.bitnet (Mike Rutenberg,c/o Box 539,,6135493346) (03/06/90)
In article <776@ns-mx.uiowa.edu> jlhaferman@l_cae05.icaen.uiowa.edu (Jeffrey Lawrence Haferman) writes: >Could someone please tell me what machines Objectworks for C++ is available >for? Specifically, I am looking for a C++ for the Macintosh. I know >Objectworks for Smalltalk-80 is available for the Mac, but the only >C++ compiler for the Mac I know of is part of MPW. My understanding is that Objectworks C++ is a huge huge system that requires on the order of 24 MBytes of RAM to get started. This might almost rule out the Mac as it stands now. I suspect that Objectworks C++ might be more tied to Unix facilities than in normal Objectworks Smalltalk since it has to tightly coordinate with the existing compilers. Mike
khaw@parcplace.com (Mike Khaw) (03/08/90)
mdr@reed.bitnet (Mike Rutenberg,c/o Box 539,,6135493346) writes: >My understanding is that Objectworks C++ is a huge huge system that >requires on the order of 24 MBytes of RAM to get started. This might There was a typo in the Objectworks for C++ installation doc. that said that it needed a Sun with a minimum of 23 Mb. The correct number is 12 Mb. But it doesn't all go to Objectworks for C++ ... In fact, I just fired up vanilla version 1.02 (the latest version shipping) on my Sun3, and "ps axu" shows a resident set size of 4.5 Mb and a total size of 6.5 Mb. -- Mike Khaw ParcPlace Systems, Inc., 1550 Plymouth St., Mountain View, CA 94043 Domain=khaw@parcplace.com, UUCP=...!{uunet,sun,decwrl}!parcplace!khaw
khaw@parcplace.com (Mike Khaw) (03/08/90)
atoenne@laura.UUCP (Andreas Toenne) writes: >In article <77720@tut.cis.ohio-state.edu> Tim Hansell <hansell@cis.ohio-state.edu> writes: >>The images is built up on top of the virtual machine, and for Smalltalk >>the compiler compiles st-80 into the byte-codes that the virtual machine >>executes, while in C++ the compiler is a C++ compiler into byte-codes. Just to clarify, when you "accept" a new method in Smalltalk-80 the compiler compiles it into byte codes. When that method is invoked, the byte code representation is dynamically translated to machine code and kept in a "native method" cache. The byte code representation saves space, while dynamic translation is more efficient than interpreting the byte codes. >Concerning Objectworks for Smalltalk80.... >it runs on DEC3100 and PCS RCU too. >Additionaly the version 2.3 runs on PCS Cadmus and the Atari ST. >(A port to 2.5 is planned but not yet scheduled) The PCS RCU, PCS Cadmus and Atari ST versions are by Georg Heeg, Dortmund, W. Germany. The DecStation version is by ParcPlace systems and runs on all models of that line (MIPS CPU, Ultrix OS). -- Mike Khaw ParcPlace Systems, Inc., 1550 Plymouth St., Mountain View, CA 94043 Domain=khaw@parcplace.com, UUCP=...!{uunet,sun,decwrl}!parcplace!khaw
khaw@parcplace.com (Mike Khaw) (03/08/90)
jlhaferman@l_cae05.icaen.uiowa.edu (Jeffrey Lawrence Haferman) writes: >Could someone please tell me what machines Objectworks for C++ is available >for? Specifically, I am looking for a C++ for the Macintosh. I know Objectworks for C++ is currently available for Sun3 and Sun4 (aka Sparc). Please contact sales at ParcPlace Systems for details: voice: 800-822-7880 email: ...!{uunet,sun,decwrl}!parcplace!info -- Mike Khaw ParcPlace Systems, Inc., 1550 Plymouth St., Mountain View, CA 94043 Domain=khaw@parcplace.com, UUCP=...!{uunet,sun,decwrl}!parcplace!khaw
jans@tekgvs.LABS.TEK.COM (Jan Steinman) (03/10/90)
<khaw@parcplace.com (Mike Khaw)> <Just to clarify, when you "accept" a new method in Smalltalk-80 the compiler compiles it into byte codes. When that method is invoked, the byte code representation is dynamically translated to machine code and kept in a "native method" cache. The byte code representation saves space, while dynamic translation is more efficient than interpreting the byte codes.> Assuming you are going to use the method again before the cache flushes, native code via "dynamic translation" is faster. However, DT has it's own overhead, which must be amortized over a number of executions just to break even. DT works great on things that loop a lot -- like benchmarks. Interpreting byte codes is not very expensive if the interpreter is tightly coded in assembler. PPS has chosen a C implementation for portability. On typical, UI intensive Smalltalk code, I find an efficient assembly coded interpreter to be faster than a C interpreter with DT. Jan Steinman - N7JDB Tektronix Electronic Systems Laboratory Box 500, MS 50-370, Beaverton, OR 97077 (w)503/627-5881 (h)503/657-7703