Path: utzoo!utgpu!watmath!maytag!watvlsi!fchan From: fchan@watvlsi.waterloo.edu (Francis Chan) Newsgroups: comp.lang.smalltalk Subject: Smalltalk V/286 to Smalltalk 80 Message-ID: <4218@watvlsi.waterloo.edu> Date: 2 Mar 89 15:54:51 GMT Distribution: comp Organization: U of Waterloo, Ontario Lines: 77 This is another attempt to solicit info regarding the porting of ST-V/286 to ST-80. So far, all I've received are requests for me to post a summary. Surely, somebody out there must have done something similar??? I have an article which mentions some pertinent stuff. The authors ported their stuff from ST-V (not V/286) to ST-80: The OFMspert Project (Its from July 88 issue of HOOPLA!) by K.S. Rubin, P.M. Jones and C.M. Mitchell. (Summarized without permission from authors.) Essentially you: {1} file out the source code into 2 files: (a) class defs and (b) methods {2} Adjust syntax as necessary (apparently a mechanical process). {3} File in the class defs. Class categories (ST-80) are added to the defs as they are being filed in. {4} File in the methods. This is apparently another mechanical operation. Return expressions should not be ended with ".". {5} Split large methods into smaller ones. {6} Add any classes native to ST-V that weren't in ST-80. The class they mentioned was the Pattern class. {7} Test like crazy. The authors indicated that the first 6 steps took approx. 15 hours for 2 experts to do (ported 33 classes and 291 methods to 244 classes(!!) and 4902 methods (!!!!!)). Apparently, the ST-V methods were larger than most so a lot of splitting had to be done. The testing part (7) took 120 hours. This is helpful in itself in order to gauge the time. However, I need to know how compatible the window interfaces are. I have unfortunately done some tweaking to the ST-V/286 window interface to do things like closing "children" windows and objects when the parent is closed. I have yet to receive our copy of ST-80 so I cannot look at the source code for the interface. Ok. Maybe some more direct questions may help make it easier to answer. (i) ST-V/286 has the concepts of buttons ... any equivalent in ST-80? (Not very important since use of menus can circumvent this) (ii) ST-V/286 handles windows by using an OrderedCollection of dispatchers for the window instances. Does ST-80 do the same (sounds like the logical way of doing it)? I ask this because of the lack of definitions for similar classes in the "Blue book". The "Red book" mentions something brief on the ScreenController class. (iii) ScreenController class: How does it know which window (view) is active? Is there a class (subclass) that is responsible for each browser that is then stored in a ScreenController variable? (iv) Can someone knowledgeable in the ST-80 interface mention the classes involved in closing and opening of a window? How it handles cycling? Details needed... Thanks. Francis Chan ---------------------------------------------------------------------- fchan@swen1.waterloo.edu fchan@watvlsi.waterloo.edu