Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!uunet!samsung!usc!apple!agate!saturn!golding From: golding@saturn.ucsc.edu (Richard A. Golding) Newsgroups: comp.os.os2 Subject: Re: OS/2 PM Programming Message-ID: <9989@saturn.ucsc.edu> Date: 10 Dec 89 03:52:46 GMT References: <628894921.26415@minster.york.ac.uk> Organization: U.C. Santa Cruz, CIS/CE. Lines: 46 In article <628894921.26415@minster.york.ac.uk>, paulb@minster.york.ac.uk writes: > Hi! As there are a number of people in this newsgroup who obviously > seriously program OS/2 PM, I thought I'd ask about how people find it as > a programming environment. > ... In truth, I > found that I was very impressed by the system, and especially by the > ease of writing PM programs. Sure they're more complex than straight > command-line style programs, but what wouldn't be? > I suspect that the general observation is accurate that PM programming has been trashed in the press because it's more complicated than straight-line programming. However, PM programming is far more painful than it need be. Having worked in four different windowing environments -- PM, OpenView, X11 Xlib, and X11 toolkit (Xt), I have a definite preference for Xt. Several critical components of Xt are simply far better designed than the equivalent parts of PM -- presumably the result of MIT and Stanford having iterated on the problem of writing windowing applications for several years, then having a significant fraction of workstation manufacturers provide input before settling on any particular design. For example, X uses a `translation manager' to govern the mapping between external events and widget actions; a user or programmer can reconfigure the event-to-action bindings as needed for any particular application. PM has no such facility. Xt gets by with far fewer basic kinds of widgets than PM does controls, because the widgets are customisable. Some of the Xt widgets are much better designed than their PM counterparts -- the textWidget family, for example, is an extremely flexible set of tools that can be composed to yield a number of different kinds of multiple- and single-line text entry widgets, whereas PM has the rather clunky MLE which has no composability. (Concrete example: if you want to edit a text file, with Xt you use an asciiDiskWidget, which creates a `text source' of the file and uses a standard `text sink' to display the information. With PM you have to handle loading the text into the control yourself.) In summary, I'd say that PM programming probably isn't as bad as many people say it is. But it's a lot more painful than it needs to be. -richard ----------- Richard A. Golding, Crucible and UC Santa Cruz CIS Board Internet: golding@saturn.ucsc.edu Work: {uunet | ucscc.ucsc.edu}!cruc!golding