Xref: utzoo comp.lang.c++:1650 comp.lang.smalltalk:692 Path: utzoo!attcan!uunet!tektronix!tekcrl!tekgvs!jans From: jans@tekgvs.GVS.TEK.COM (Jan Steinman) Newsgroups: comp.lang.c++,comp.lang.smalltalk Subject: Re: OO debuggers Message-ID: <3967@tekgvs.GVS.TEK.COM> Date: 20 Sep 88 21:52:57 GMT Organization: Tektronix Inc., Beaverton, Or. Lines: 55 <> <<...you should look closely at the generally available Smalltalk-80 debugger...> I'm glad you have,and I agree that it is not without problems. The fact that it is quite different than most debuggers is what I want people to pay attention to. It's a matter of "execution state as an object" vs "rape and pillage the process". <<...execution speed, the least important metric in the present "software crisis"...>> (Boy, am I catching flak for this statement!) <...one of the important properties of a debugger is that it has minimal effect on the observable run-time behaviour of one's program. Smalltalk's debugger... falls over here. Having to wait a minute for the debugger to simulate a method that usually concludes in 200mS is unacceptable -- especially if you are not informed of the delay in advance.> (More specifically, the Smalltalk-80 V2.2 debugger from PPS.) I plead the ultimate cop-out, "it's an implementation detail." It's unfortunate if anyone has formed an impression of Smalltalk performance based on the debugger. The Tektronix Smalltalk debugger runs at full execution speed, while the original Version 2 debugger (and PPS follow-ons) interpret (in Smalltalk) the executing method. I do not know how Smalltalk-V handles this, although I have heard good things about their 286-version debugger. But I digress. Henry Spencer would turn this discussion into a Smalltalk-bashing session, and seems to be unwilling to discuss the shortcomings of C++ when used for OO. I'm unwilling to be pressed into defending Smalltalk, rather I'm saying, "Why aren't all you C++ object-oriented neophytes looking at the rich body of OO knowledge that has evolved in Smalltalk?", with the debugger as an example. And also with the debugger as an example, I'm pointing out that C++ inadequately addresses Smalltalk's greatest strengths: rapid prototyping and incremental development. Smalltalk excels at the "make it work, then make it fast" model of development, whereas it appears to me that C++ is heading in the direction of more up-front design work, and less in the direction of promoting evolutionary development. I can only laugh sadly when I hear the unspoken undercurrent: "Now that C is object-oriented, there's no longer any need for Smalltalk.", and am dismayed that a whole generation is doomed to think C++ synonymous with object-orientation. ("Huh, what's Smalltalk?") I am gratified that Jan Andrew Purchase is taking a larger view than most OO newcomers have taken. :::::: Software Productivity Technologies -- Experiment Manager Project :::::: :::::: Jan Steinman N7JDB Box 500, MS 50-383 (w)503/627-5881 :::::: :::::: jans@tekcrl.TEK.COM Beaverton, OR 97077 (h)503/657-7703 ::::::