Path: utzoo!utgpu!jarvis.csri.toronto.edu!clyde.concordia.ca!uunet!wuarchive!zaphod.mps.ohio-state.edu!think!ames!amdahl!pacbell!sactoh0!tree!stever From: stever@tree.uucp (Steve Rudek) Newsgroups: comp.lang.forth Subject: Re: Standard interface to windows? Summary: Better is the enemy of good enough Message-ID: <1990Jan4.022642.29732@tree.uucp> Date: 4 Jan 90 02:26:42 GMT References: <8912280627.AA03786@jade.berkeley.edu> <58XB.4KX.ggpc2@ficc.uu.net> Organization: TREE BBS (916)349-0385 Sacramento, Ca Lines: 68 In article <58XB.4KX.ggpc2@ficc.uu.net>, peter@ficc.uu.net (Peter da Silva) writes: > In article <8912280627.AA03786@jade.berkeley.edu> Forth Interest Group International List writes: ... > > The imaging models for various window systems are > > drastically different (pixel-based vs. spline/stencil/ink, automatic > > clipping vs. programmer-controlled clipping, different font models, > > gadget interaction managed by the programmer vs. by the OS, automatic > > vs. non-automatic mouse cursor clipping, etc). > > Much of that can be hidden by the interface, just as Forth block files hide > the differences between CP/M, UNIX, OS/9, DOS, etcetera. You don't WANT to > know what files look like on some of the systems I've used. > > > It would be possible to build an abstract interface that would fit on top > > of any system, but that abstract interface would probably be so big, > > baroque, and slow that nobody would use it. > > Perhaps. I suspect not. People still run Nethack in Xterm windows, Amiga > console windows, and so on... > > Start with the easy stuff. Yeah, Peter! It would be interesting to see a personality profile of the average Forth programmer as compared to, say, the average C programmer. I wonder if Forth programmers have a greater than average tendency to never get anything completed because they are too caught up in fine tuning the innards for "optimum performance." I got a D in 6th grade woodshop because I fell into that trap. The very first "project" was to square a board using a hand plane and a carpenter's square. I worked diligently on my board but could never get it "perfect". At one point I took my board to the teacher and asked if it was "good enough for an A." He said, "What do you think? Turn it in and find out." Well, it wasn't quite square so I kept at it. When the board was wittled down to 1 inch by 1 inch I asked the teacher for a new board and started over. While other students turned in their "less than perfect" boards and moved on to other projects I kept planing away. I wasn't completely stupid. After a while it became a challenge of me against the damned board and the grade had nothing to do with it. Anyway, getting back to the topic of windows and other "standards", I have a hypothesis that the Forth community's inability to develop any significant standards on such elementary items as strings, floating point, files and windows is because Forth programmers are getting to caught up in "perfectionism." I quoted George Patton in a previous posting in order to try and make the point that EVEN A HALF-ASSED STANDARD IS BETTER THAN NO STANDARD. It would be better to have a less than "optimally flexible" string package than no string package. It would be better to have a slower than optimal floating point package than no floating point package. It would be better to have a text based windowing standard a la "curses" than no windowing standard. Jeepers, folks! Isn't this Forth we're talking about?? So what if the code you get from FIG doesn't address 100% of the windows gizmos you have available under the Macintosh standard interface? Use the package to implement the basics and then design your own words to handle the entensions. So what if the package isn't "optimally fast"? Get it up and running and then rewrite the underlying primatives! You think it's better to design everything COMPLETELY from scratch? Didn't Kernighan and Plaugher say something like "first make it work before you worry about making it better"? -------- I've resolved to become "a kinder, gentler" Forth critic in this new year. -- {pacbell!sactoh0! OR ucdavis!csusac!}tree!stever