From the Editor
Written by Larry Salomon Jr.
What a month it has been! By the time you read this, OS/2 3.0 Warp will be available in (hopefully) stores everywhere and you may be reading this issue using Warp on your computer. I had the pleasure of finding a shrink-wrapped copy sent by IBM on my doorstep in mid-October, which I installed the next day. After almost a month of use, I must say that IBM has a winner here...
If they can market it effectively, that is. IBM is as notorious for poor marketing as Microsoft is for missing deadlines. Will they be able to change? Who can say? IBM has two things going for them, however: a new advertising agency and a new budget. The possibilities are there; now it is up to IBM to realize this new-found potential.
Support Your Favorite Operating System
Fortunately, we can aid IBM in its struggle against the behemoth. Team-OS/2 is an excellent organization that coordinates the world-wide battle to evangelize OS/2 and its advantages versus Windows. A number of well-known IBMers are affiliated, though not officially, with this organization. Check with your local IBM office to see how you can be put in touch in order to help out in your neck-of-the-woods.
Like I Said...
"By the time you read this..." During the development of the sample for the Introduction to PM Programming column, all-of-a-sudden the Resource Compiler stopped working. After two days of unsuccessfully beating on my machine, I thought that maybe it was an environment inconsistency that occurred when I installed Warp and forgot to save my CONFIG.SYS (and thus had to rebuild the development-related sections manually). So, I uninstalled the Toolkit and C-Set++ and reinstalled them.
Nothing different. RC still hung apparently somewhere in the middle of including <os2.h>>.
After two more reinstalls of both products, I decided - on a whim - to try running RC against another source file and, to my chagrin, it worked. "It must be," I thought, "a problem with the BUTTON.RC file." So I pulled up my editor to find a hex x'02' character at the end of one of the lines. Ironically, this is a smiley face; I suppose someone was laughing during both days while I was going nuts trying to get this to work (so that I could finish the magazine).
Now, my qualm with the whole situation is with the (lack of) error recovery in RC. This has happened to me once before but (obviously) I didn't bother jotting down what the cause of the error was. I claim, though, that I shouldn't have to if RC would simply report errors when it sees them. Remember this one?
BUTTON.RES(0): I/O error. Attempting to continue...For those of you who haven't seen this error before, it happens most frequently when the RES file was not generated because the user pressed Ctrl-Break in the middle of the compilation. Has anyone in the Toolkit Department in Boca Raton ever heard of the remove() function? No, I suppose not, or this message would have been removed a long time ago when IBM received the code from Microsoft for the Toolkit utilities.
Looking to Steal a Good Idea
In the "Quest of the Month" department, I am trying to steal; yes, I want to steal a good idea from another great electronic magazine, OS/2 Personal. In order to make it easier for people to write, I want to change our source format from OS/2's Information Presentation Facility (IPF) format to Rich Text Format (RTF). This would allow future authors to write their articles in any one of the many word processors that support this format on export.
The problem which I am trying to solve is in the translation from RTF to INF for viewing by our many readers. If you have a solution to this interesting problem (perhaps an RTF to IPF compiler?), please contact me via email; I'd love to hear what information you can provide.
Washing Up Gets Rids of Dirt
I was conversing with someone through email and he mentioned something called Clean, so the obvious question in my mind was, "What is it?" It is apparently a functional programming language, which means that all programs written in the language are comprised solely of functions. To use the example given to me, consider the function to calculate the factorial of a number:
Fac:: Int -> Int Fac 1 = 1; Fac n = n * Fac (n - 1);That should be enough to wet your appetite. Clean is available for the OS/2, Mac, Sun, and Linux platforms and the latest version (0.8) can be obtained via anonymous FTP from ftp.cs.kun.nl.
Washing Up Gets Rid of Bugs
And while the latest CSD from IBM would also appear to do this, according to David Charlap, it could have done a better job. "Fixpacks" XR_A056 and XR_A058 are available for OS/2 2.11 which fix, among other things, some interesting Gpi bugs. However, David mentioned that, after installing both of these CSD's, IPMD started behaving weirdly and that a bug report was sent to the C-Set++ group. We will keep you posted as he sends us new information. Thanks, David, for your note.
Reader's Choice Awards
This is your friendly reminder that, next month, we will conduct our Reader's Choice Awards for the year 1994. I sincerely hope to receive more than 14 votes for the best articles of the year. <grin>