congdon@ci-dandelion.UUCP (Robert M. Congdon) (08/25/86)
I went to the MacApp presentation at the MacWorld Expo in Boston last Saturday. The presentation was given by Kurt Schmucker (author of the book "Object-Oriented Programming for the Macintosh, published by Hayden). I came away pretty impressed -- especially by a demo program written by Larry Rosenstein called MacApp Paint. It was pretty much like MacPaint except that it supported multiple documents, resizable windows and auto-scrolled during dynamic operations (e.g. while drawing a line). Not only did it have a lot of features but it appeared to be pretty fast. I understand that this was developed in two months. Now I wonder: was this program was written completely using MacApp and Object Pascal? Also, during the demo Kurt showed a debugger that allowed one to trace message sends and set breakpoints on message sends. Is this a standard part of MacApp or is it part of MPW Pascal? -- ----------------------------------------------------------------------- Robert M. Congdon ..{talcott,mit-eddie,frog}!ci-dandelion!congdon ----------------------------------------------------------------------- Cognition, Inc. 900 Tech Park Drive Billerica, MA 01821 (617) 667-4800
lsr@apple.UUCP (Larry Rosenstein) (08/26/86)
In article <183@ci-dandelion.UUCP> congdon@ci-dandelion.UUCP (Robert M. Congdon) writes: > >Now I wonder: was this program was written completely using MacApp >and Object Pascal? Also, during the demo Kurt showed a debugger that >allowed one to trace message sends and set breakpoints on message >sends. Is this a standard part of MacApp or is it part of MPW Pascal? > MacApp Paint was written using MacApp and Object Pascal, with a small amount of assembler (bit manipulation stuff), most of which was copied directly from the sources to MacPaint. All of the user interface to the program was written in Object Pascal. The only non-standard thing I did was with the scrolling (since I have the entire bitmap in memory, there is no reason to use ScrollRect). This was very easy to override in MacApp. The program was was intended to demonstrate that programs written using object-oriented programming and MacApp do not necessarily have to be slow. The debug window and tracing facility that were shown in the talk are a standard part of MacApp. (The debugging facilities in MacApp include about 70K of code.) They are based on a feature of MPW Pascal where the compiler can insert a procedure call at the beginning and end of each procedure. The MacApp debugger implements these procedures and does things such as searching for the procedure name, etc. (There is no technical reason why the debugger couldn't be used in a non-MacApp program, but there is not enough time to document it for the first MPW release.) -- Larry Rosenstein Object Specialist Apple Computer AppleLink: Rosenstein1 UUCP: {sun, voder, nsc, mtxinu, dual}!apple!lsr CSNET: lsr@Apple.CSNET