Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!dali.cs.montana.edu!caen!math.lsa.umich.edu!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!linac!att!att!cbnewsk!pegasus!hansen From: hansen@pegasus.att.com (Tony L. Hansen) Newsgroups: comp.object Subject: Re: A Rewrite Is *NOT* An Experiment Summary: how much language and how much environment? Message-ID: <1991May7.140550.15767@cbnewsk.att.com> Date: 7 May 91 14:05:50 GMT References: <44.UUL1.3#913@acw.UUCP> <4405.281bed6a@iccgcc.decnet.ab.com> Sender: hansen@cbnewsk.att.com (tony.l.hansen) Organization: AT&T Bell Laboratories Lines: 35 < From: klimas@iccgcc.decnet.ab.com < One can raise the argument that when rewritting a program in an OOP < language from a non OOP language, it is easier because one is < benefitting from the accumulated design knowledge in the existing < code. < This was an interesting argument that was difficult to disprove until I < had a real life experience relayed to me by a software tool maker. To < meet some tight deadlines for an upcomming trade show, they did a show < demo in Smalltalk. Afterwards they had to reimplement the same program < in Objective-C which was a little harder and took longer even though < the developer's were well versed in the language. Finally, the same < tool was rewritten for C++ which was much harder to do and took < significantly longer. The tool developer has his greatest market with < C++ users so he's reluctant to tell his customers they are not < necessarily using the best technology. < This experience seems to disprove some of the ideas that it is easier < to redo software the second time around. I can't help but wonder how much of the problems doing the reimplementation were due to lacks in the language vs. a lack of an equivalent library and/or environment. For example, if the Smalltalk library provided a particular flavor of collection class which was crucial to the implementation, and a comparable collection class weren't already available in Objective-C and/or C++, such a collection class would probably have to be coded from scratch in order to continue with the port. Should that be considered a problem with the technology or a problem with the maturity of the technology? In other words, the technology may be sound but just not have sufficient support. We need more data. Tony Hansen hansen@pegasus.att.com, tony@attmail.com att!pegasus!hansen, attmail!tony