![]() |
From the EditorWritten by Carsten Whimster |
AdministriviaEDM/2 3-9 is finally out! Last month, I was extremely busy with many things, not the least of which were preparing for ColoradOS/2 and converting old issues to native HTML format, so I passed the ball to Carsten. Unfortunately, Carsten never produced an entire issue, so after much trial and error and with what little help I could offer from Colorado, he finished after October 15; we decided that, given the slimness of the issue, we would push it to November since we were expecting more submissions from other authors. A few notes before I sign off for the month:
Well, this month the worst finally happened: Larry got too busy doing other important things (among which is converting old issues to HTML!) to do this issue, so here I am, starting late, and going slow. It has been a long and hard month, but there were a few highlights. Already there are many reports of people buying some other 32-bit operating system, and getting so disappointed that they took it back and bought Warp. Of course, this is not what everyone is doing, but every little bit helps. We need to be ready for these people with lots of great high-quality OS/2 apps, so everybody get cracking right now! A new fixpack (10) is out, and it has received mixed reviews. There are also two unauthorized fixpacks out there (11 and 12), and although I wouldn't recommend an unauthorized fixpack, it sounds as if things are heading in the right direction. Fixpacks 9 and 10 broke some things in the REXX DLL, but supposedly these are fixed again in fixpack 12. One of the things which was broken in 9 and 10 was the VRPrompt function in VX-REXX, which uses an automatically sized entry field. It turns out that the entry field itself was broken, and IBM seems to have admitted this. Hence the re-fix in fixpack 12. Included with this issue is the latest round of bugfixes and updates for the editor which has been developed in the last few issues. Look for smaled95.zip. If the format is a little odd here and there, it is because I didn't have time to go around and fix everything. It should be readable, though. That is about all I have to say here. Now we continue on with the rest of this slightly slim issue... AnnouncementsBullet Database Engine Toolkit for 32-bit CompilersContact: Cornel Huth San Antonio, Texas - Bullet/2 for OS/2 is a thread-safe, multi-process capable database engine toolkit. It provides pre-built and tested access methods to data and index files for application programmers. It is not an end-user Database Management System (DBMS), but it is a tool that may be used to develop one. Bullet is compact, efficient, and very fast. Bullet can be configured to use custom key-build, sort-compare, and expression- parser routines to extend the built-in functionality. Rules are few; possibilities are great. The standard data format is DBF (dBASE 3+ and later). The supported memo format is DBT (dBASE 4 and later). Index-only support can be enabled and with this any data file format may be used (the data maintained by the programmer then). Also, the DBF standard may be extended by using binary field values and fields larger than 255 bytes. Index files are NLS- compatible and use an efficient b-tree structure. Files may be any size supported by the OS, up to 4GB. Up to 1024 files may be opened and in use by any one process, with any number of processes active. The Bullet API consists of a wide assortment of routines, from low-level OS calls to high-level transaction-list routines that can process hundreds of files per transaction, with roll-back on error. Network and multi-user support is included, and makes use of operating system features such as atomic re-locking, and shared locks that allow other processes read-access to locked files. Bullet is simple to use and works the way you are used to working. Documentation and samples included are for C or C++ compilers, but any compiler supporting 32-bit DLLs may be used. Pricing is available in three options, depending on total open files needed, simultaneous processes running, and DLL or LIB requirements. Price starts at $99 US. This release includes a try-before-you-buy version with the same functionality as is available in the $99 option (100 open files, 2 processes), and may be used for evaluating Bullet before purchase. The try-before-you- buy version for OS/2 is located at the following locations:
Bullet is now available for: Bullet/2 for OS/2: Includes DLL, import library, online and printer-ready manuals. The API reference is available in either manual, with the tutorial and additional source examples in the online version. A demo EXE program, along with source, is also included. Printed documentation and the LIB version of the library code are also available. Bullet/X for 32-bit DOS extenders is to be available by the end of the month and offers essentially the same features as Bullet/2, except it is for MS-DOS platforms (DOS extender/DPMI-compliant). The Windows Win32 version is to follow soon after. Bullet 1 has been available for 16-bit compilers since 1992, and these are available today as bltc125.zip, bltw125.zip, and bltq125.zip, for DOS C/C++, Window 3.x, and DOS BASIC compilers, respectively, at the sites listed above. For more information, visit any of the sites listed and download the evaluation files, or e-mail to cornel@crl.com. Multi-Voice and Multi-Fax Toolkit ReleasedMontreal, September 1995: ITI Logiciel (ITI Software) announce the release of the OS/2 version of their Multi-Voice and Multi-Fax programmer's toolkit. Multi-Voice and Multi-Fax can be used to create voice processing application such as: voice mail, automated attendant, fax-on-demand, fax broadcasting, interactive voice response. As a high level 'C' toolkit, it is as easy to use as any script language, but offers speed and flexibility of the 'C' language. Here's description of the two products. Multi-Voice Version 4.0 ITI Software proudly presents MULTI-VOICE Version 4.0, the complete set of tools to write multi-line voice applications on OS/2 for most of the voice processing boards available today. Multi-Voice Product Description MULTI-VOICE gives you a very high level C interface to the voice board features. With a single function call, you can play or record a voice file. You can play date and time, numbers, spell strings. Your Multi-Voice programs can detect the callers Touch-Tones or rotary pulses, even voice recognition is available in some versions. Never before has it been easier to integrate a multi-line telephone interface to your C programs. MULTI-VOICE has its own multi-tasking interface. You can run the same task on all lines in the system or different tasks on certain lines. For most applications, the multi-tasking is completely transparent and there is no need for the programmer to have multi-tasking programming experience. MULTI-VOICE brings the full power of voice processing boards to your finger tips with the speed and ease of use of Borland's C/C++ 2.0 for OS/2. Multi-Voice Example Programs A Multi-User Multi-Line Telephone Answering program is provided to give examples of how to call most functions in the library. The source code is included, so this program can be modified to suit your own needs. We also provide all the pre-recorded prompts used by this program. Many other example programs are also provided with makefiles for all supported compilers. Voice Boards Supported Dialogic D4xx, D12xx, AMX, VRxxx Rhetorex RDSPxxxx NewVoice NVx00 Bicom xLS Linkon's FC3000 & FC4000 Pika's V12 and InLine Series Talking Technology's Power Line II Portability The programs written with Multi-Voice for any voice board can be ported without any modifications for use with other voice boards. ITI Software offers C libraries for all the supported boards, which reduces the programmer's work to simply recompiling programs for the appropriate hardware. And we're always working to implement new manufacturer's products. System Requirements IBM PC or compatible running DOS 3.3 or higher (6.2 recommended) Any of the supported Voice Processing boards C/C++ Compiler: Borland's V2.0 for OS/2 Talking Clock Sample Program /* ** This example program shows how easy and clear it is to program ** Multi-Line Voice Response applications using MULTI-VOICE Version 4.0. ** ** The program plays the current date and time on all lines available in ** the system. It answers the phone, plays a little introduction message, ** asks the user to press 1 for FRENCH, 2 for ENGLISH or 3 for SPANISH ** and it plays the date and time in the selected language, in the format ** Week Day, Month Day, Hour and Minutes. */ #include "stdio.h" #include "MV_Util.h" #include "MultiVox.h" #define TIMEOUT 10 #define RETRY 3 #define PROMPT_DIR "PROMPTS" void far LineHandler ( ) { char answer; MVU_LANGUAGE language; MVU_DATE date; MVU_DATE_FIELD date_field; MV_StartLH ( ); while (MV_Running) { MV_Answer (1); /* answer phone after 1 ring */ if (MV_Result ( ) == MV_SUCCESS) { MV_Play ("intro.v", MV_AbortOnDtmf); MVU_ReadMenu (PROMPT_DIR, "language.v", "err.v", & answer, "123", TIMEOUT, RETRY); if (MV_Result ( ) == MV_SUCCESS) { switch (answer) { case '1' : language = MVU_French; break; case '2' : language = MVU_English; break; case '3' : language = MVU_Spanish; break; } MVU_GetDateTime (date); date_field = MVU_WDAY | MVU_MDAY | MVU_HOUR | MVU_MIN; MVU_PlayDate (PROMPT_DIR, date, date_field, MV_NoAbortOnDtmf, language); MV_Play ("goodbye.v", MV_AbortOnDtmf); } } MV_OnHook ( ); } MV_StopLH ( ); } void main (void) { MV_AllLineHandlers = LineHandler; if (MV_Start ( ) == MV_SUCCESS) { MV_WaitEscape ( ); /* Waits until the ESCAPE key is pressed */ MV_Stop ( ); } else printf ("Initialization error"); } Contact us for a complete list of functions provided. All this for only $799 US Multi-Fax Version 2.0 ITI Software introduces MULTI-FAX, the complete set of tools to write multi-line fax applications for any CAS facsimile boards on OS/2. Multi-Fax Product Description The MULTI-FAX toolkit allows programmers (experienced or not) to write applications which handle fax transmission. The toolkit can handle up to ten fax boards simultaneously in a single PC. MULTI-FAX will send any ASCII files, PCX or DCX graphic files without format conversion. You can send multiple documents in a single call. Used along with ITI Software's MULTI-VOICE toolkit, the MULTI-FAX toolkit allows programmers to create highly sophisticated software to handle all aspects of telephone interfacing. Applications such as Fax-Mail, Document Broadcasting and Store-And-Forward can be implemented with minimum effort. Multi-Fax Example Programs Many example programs are provided to show how to call most procedures and functions. You can modify these programs to suit your own needs. System Requirements IBM PC or compatible running DOS 3.3 or higher (5.0 recommended) Any CAS compatible Fax Processing board. C/C++ Compiler: Borland's V2.0..V4.5, Borland's Turbo V2.0..V3.0 or Microsoft V5.1..V8.0. Fax Sending Sample Program #include "stdio.h" #include "MultiFax.h" void main (void) { int fax_handle /* Start MULTI-FAX and verify if there is a FAX board in the PC */ if (MF_Start () == 0) { printf ("No board found. \n"); exit (-1); } /* Create a fax entry. */ fax_handle = MF_CreateFax (); /* Add company logo on cover page. */ MF_AddLogo (fax_handle, "logo.pcx"); /* Add a message to the cover page. */ MF_AddCoverPageText (fax_handle, "This is the cover page message."); /* Add ASCII text file "FAX.TXT" and graphic document "FAX.DCX". */ MF_AddDocument (fax_handle, MF_ASCII_80, "fax.txt", MF_LETTER); MF_AddDocument (fax_handle, MF_DCX, "fax.dcx", MF_LETTER); /* Send it using highest resolution */ MF_SetResolution (fax_handle, MF_FINE); MF_SetDestinationName (fax_handle, "Your Name"); MF_SetSenderName (fax_handle, "ITI Software"); MF_Send (fax_handle, MF_ANY_BOARD, "555-1212"); MF_FreeFax (fax_handle); } Contact us for a complete list of functions provided. All this for only $299 US Rexx Symposium Dates AnnouncedReserve May 13-15 next year for the Rexx Symposium and meeting of the Rexx Language Association. We will meet in Austin, Texas, and have negotiated low lodging rates at the Hyatt Regency. The Call for Speakers and more information will follow. OS/2 Electronic Magazines
[Editor's note - We still get no respect. Sigh.] New GNU Fortran AvailableThe new version of GNU Fortran (g77-0.5.16) has been ported to emx. It's available for anonymous ftp on:
Look for g77bin.zip (binaries) and g77src.zip (source). This port of g77 uses now the backend of gcc-2.7.0. The executables (g77bin.zip) should work with gcc-2.6.3 binaries, too. Please send bug reports for g77 to fortran@gnu.ai.mit.edu, except for bugs introduced by the port, which should be reported to me. If you are not sure, send bugs to me. Contact: Dick Goran Free OS/2 Related Drawings on the InternetLas Vegas, Nevada (9/28/95) -- Beginning on October 1, 1995 C F S Nevada,
Inc. will offer free monthly drawings at its Internet World Wide Web site
Though not the first WWW giveaway, this drawing is one of the few that will
offer entrants a chance each month to win multiple awards. The rules
governing the drawing are listed on C F S Nevada, Inc.'s home page.
The only hardware requirement necessary to complete an entry form for the
drawing is a WWW browser that supports form submission. It is not
necessary that the entrant be running OS/2.
C F S Nevada, Inc. is a Las Vegas based producer and publisher of OS/2
related software and publications as well providing commercial OS/2
training. Links on their WWW site are provided for OS/2 related hardware
and software as well as some unusual, non-computer related sites.
For more information: http://www.secant.com or info@secant.com
Now you can add bubble hints to any OS/2 program with our new Hint Bubble
Custom Control. You can attach them to any control, such as those
confusing toolbar buttons, and they will pop up after a specified time
period to provide addtional information. This control is provided with a
"C" interface only, although it may come out in the next release of the
ObjectPM Control Pack with all the wrapper classes. Everything you need is
included -- header files, libraries and DLL's. This is a "teaser" to drum
up interest in our custom control package and OS/2 custom controls in
general.
No source provided, but may be distributed with any executable
royalty-free.
Come and get it from our Web page at http://www.secant.com. Please do not
post on any other ftp site, as we would like to monitor interest by
counting ftp'd copies.
Stardock Systems will begin shipping its Object Desktop on October 2, 1995.
Targeting both the corporate and retail markets, Object Desktop is an
advanced desktop environment that "turbo-charges" OS/2, improving
performance, flexibility, and ease of use.
Object Desktop enhances the existing OS/2 environment with updated icons,
frame controls, and command buttons, and adds new tools designed to boost
productivity and system performance. The new features include the Object
Navigator, Control Center, Keyboard LaunchPad, Object Archives, and
HyperDrive and HyperCache features.
"I haven't been this excited about a product since OS/2 Warp itself." said David Barnes, Senior Marketing Manager at IBM Personal Software Products.
"My competitors recently released a product that has some nice features.
But Object Desktop gave me everything they have and a lot more (and on a
more solid foundation--OS/2 Warp). Object Desktop will be the first thing
I install on any of my systems from now on."
Object Desktop carries a suggested retail price of $99.95. Stardock
expects the typical street price to be significantly less than that. Site
licensing and wholesale pricing sheets can be obtained from Stardock at
313-453-0328 (fax 313/453-1480).
I've put together a new version of my screen saver "Blackout." The program is intended for DPMS, or "Green" monitors which can be shut off
automatically by using this program; this is accomplished by turning off
the syncronization pulses to the monitor. The screen saver has three modes
of saving: 1) it reduces colour intensity on screen, and 2) it sets the
monitor in suspend mode, and 3) it switches the monitor off. No fancy
graphics, but it does the job - saves the screen.
The program is free and is distributed with source code. I have put
version 0.94 to hobbes today, so it can probably be found in the incoming
or new directory. The archive name is "black094.zip".
The program requires the emx runtime library, which is also available from
hobbes or ftp-os2.cdrom.com (/pub/os2/unix/emx09a/emxrt.zip).
Changes from version 0.93:
Kit for games, entertainment software developers
AUSTIN, Texas, Oct. 3, 1995...IBM today announced the availability of the
beta version of the OS/2* Warp Entertainment Toolkit on "The Developer
Connection for OS/2, Volume 8" (DevCon8). The beta has been distributed to
the more than 17,000 developers who are members of the Developers
Assistance Program (DAP).
The Toolkit offers new video, audio, joystick, and networking enhancements
from IBM that can help developers create exciting PC entertainment titles
for IBM's OS/2 Warp and build on the existing resources in DevCon. DAP
members receive tools, software technology, and information quarterly on
the DevCon CD-ROM for use in OS/2 Warp development efforts.
"Developers want direct access to devices and cross-platform capabilities," said Lloyd Webber, IBM Personal Software Products
worldwide games brand manager. "The OS/2 Warp Entertainment
Toolkit gives them those resources for developing sophisticated
interactive PC entertainment for the OS/2 market."
New development tools
The Entertainment Toolkit offers the following capability improvements in
areas ranging from sound and imagery to player interaction:
Developers can access the OS/2 Warp gaming page at
(http://www.austin.ibm.com/os2games) to receive tools, information and
DevCon updates. Developers also can use the home page to provide feedback
and sign up for free membership in DAP, which provides technical support
and assistance to developers working with OS/2.
The OS/2 Warp Entertainment Toolkit is expected to be complete in the first
quarter of 1996. The entire Toolkit will be available on DevCon and pieces
of it will be available on the OS/2 Warp games home page.
To assist OS/2 developers, IBM also sponsors Solution Partnership Centers
located in San Mateo, Calif. and Waltham, Mass. ISVs using the centers
have access to PC hardware and interaction with other software developers,
and receive technical support throughout the development process in a lab
environment.
Solution developer support of OS/2 Warp is growing. In 1995, 70 software
developers have announced development plans for more than 200 new native
OS/2 Warp applications on both Intel and PowerPC platforms, in addition to
the existing 2,500 OS/2 applications currently on the market. Nearly 3
million copies of OS/2 Warp have been sold since it was launched.
IBM news releases are available on the Internet, via the IBM Home Page at
http://www.ibm.com
The IBM Fax Information Service allows you to receive facsimiles of prior
IBM product press releases. Dial 1-800-IBM-4FAX and enter "99" at the
voice menu.
* Indicates trademark or registered trademark of the IBM Corp.
Cutting-edge object repository and software configuration management
services couple to deliver an industry first
SAN JOSE, CA, October 10, 1995 ... Application development teams are
getting connected through a powerful new tool from IBM, TeamConnection*.
Combining the industry's most robust object repository and advanced
software configuration management services, TeamConnection provides a
LAN-based client/server development environment that allows teams to
collaborate during each step of the development cycle.
TeamConnection provides an unprecedented range of capabilities, including
software configuration, version control, and problem tracking, to manage
team development through the entire application development life cycle.
From business modeling and application design through building, deploying
and maintaining an application, developers can share data, objects, and
code in a collaborative work environment.
Ciba-Geigy Ltd., a biological and chemical company with 80,000 employees
worldwide, is among a number of companies that have evaluated
TeamConnection. "TeamConnection will bring a whole new dimension to our
application development efforts," said Patrick Deville, new technologies
consultant, Ciba-Geigy Limited. "It provides our LAN-based development
team with the robust management and library functions that we expect from
our mainframe systems. We are able to eliminate many manual steps through
the managed team development environment provided by TeamConnection,
increasing our developer productivity and maximizing the quality of our
applications."
TeamConnection is built on Object Design, Inc.'s ObjectStore**
object-oriented database, which allows the TeamConnection repository to
store, with high performance, both coarse and fine-grained objects, such as
data elements and logic records. ObjectStore supports the information
model through which various development tools can share data and work
together to rapidly build and improve applications.
"TeamConnection creates a collaborative development environment on the
LAN," said Tim Negris, vice president, sales and marketing, IBM Software
Solutions. "It allows teams to store development objects in the repository
on the server and access and use that information on their client
workstations. The ability to share and reuse development objects
significantly boosts productivity and software quality."
Mr. Negris added that IBM plans to aggressively seek participation from
independent software vendors (ISVs). "With open object interfaces,
TeamConnection is an ideal repository for storing other vendors' tool
data," he said.
According to Judith Hurwitz, president and CEO of Hurwitz Consulting Group
Inc., TeamConnection represents an important component in effective team
software development. "Choosing a visual development environment is only
half of the solution," said Hurwitz. "You need a deployment strategy for
client/server." TeamConnection server and client functions are available
on OS/2*. Server functions will be extended to AIX* and other UNIX**
platforms, and Windows NT**. Client support will be extended to AIX and
other UNIX platforms, and the Windows** family. In addition, build support
is provided for OS/2 and MVS*, and will be extended to include AIX and
other UNIX platforms, VSE*, OS/400*, and the Windows family.
A number of cross-platform application development tools from IBM are
integrated with TeamConnection, including: VisualGen* V2.0, a
client/server visual application generation tool; VisualAge for C++*, an
award-winning visual development environment for C++; VisualSet for OS/2
COBOL*, a visual, object-oriented desktop version of COBOL; and PL/I for
OS/2*, a desktop PL/I-based development environment that features a
graphical user interface builder. IBM plans to further enhance the
integration of tools to TeamConnection as new releases of current offerings
and new tools become available.
TeamConnection's set of open Application Programming Interfaces (APIs)
supports the integration of non-IBM tools into the team development
environment, allowing customers to leverage their existing investments.
Today's announcement includes a new ISV program to aggressively jump-start
TeamConnection integration.
Independent Software Vendor Program
TeamConnection can provide a set of services to ISV tools, which will
extend tool capabilities in areas that are key to managing the application
development life cycle. The first of many vendors with leadership
technology expected to incorporate TeamConnection services is Compagnie
Generale d'Informatique (CGI), a worldwide provider of application
development software and services. CGI has integrated PACBASE/CS**, its
life-cycle development environment, with TeamConnection to take advantage
of advanced software configuration management functions.
Vendors interested in extending the value of their tools through
integration with TeamConnection can participate in IBM's vendor enablement
program. This program provides integration assistance to qualified tool
vendors.
TeamConnection's Advanced Features
TeamConnection for OS/2 Pricing and Availability
TeamConnection for OS/2 is priced at $1999 per user and is available
October 24, 1995. For additional information on TeamConnection for OS/2 or
the vendor enablement program, please call 1-800-IBM-3333.
For information via the Internet, users can access the IBM software page at
http://www.software.ibm.com. Then, search on "go TeamConnection." IBM's
home page can be found at http://www.ibm.com.
IBM, the world's largest software provider, creates, develops and
manufactures the industry's most advanced information technologies,
including computer systems, software, networking systems, storage devices
and microelectronics. IBM's Software Solutions Division provides data
management, application development and workgroup solutions for
mission-critical applications on PCs, workstations, LANs and host systems.
* Indicates trademark or registered trademark of International Business
Machines Corporation
** Products or companies mentioned are trademarks or registered trademarks
of their respective holder.
IBM VisualAge for COBOL for OS/2 revitalizes your COBOL applications by
extending COBOL to your OS/2 workstation
In addition to bringing COBOL to your OS/2 desktop, IBM VisualAge for COBOL
for OS/2:
IBM VisualAge for COBOL for OS/2 is a cost-effective solution that offers
the following enhancements to COBOL.
Mr.Ed is a multi-window 32-bit shareware text editor for OS/2 PM. Mr.Ed's
functionality is designed to be suitable for any text editing job.
In addition, Mr.Ed provides several features that support writing source
code. Mr.Ed also takes advantage of OS/2 specialities: Drag'n'Drop
(files, fonts, colors), EAs (cursor position, bookmarks), multiple threads,
and clipboard data exchange.
Furthermore, Mr.Ed is not based on the standard MLE control element, so
there is no loss of performance when editing large files.
Features:
Mr.Ed is shareware, but fully functional and not "crippled" in any way.
The archive can be downloaded from the following sites:
The new release 1.11 of our freeware OS/2 Class Library (OCL) for OS/2 VIO
and OS/2 PM is now available via CIS (GO OS2INSIDE) and ftp (Hobbes and
ftp.leo.org).
Don't panic! These are really good news for C++ programmers using IBM
C-Set++ 2.x, VisualAge C++ 3.0, Borland C++ 2.0, Metaware HighC/C++ 3.3x,
Watcom C++ 10.x and - guess it - gcc/emx 2.7.0!
Yes - the port for gcc/emx is done and working. Thanx to Ralph Paul who
did the job.
There is another major step foreward in OCL 1.11: The notebook bug -
annoying since the first release - has been fixed.
The class OProcStat for complete system reports is now available for all
supported compilers when developing for OS/2 Warp. The library now uses
the new 32bit-API DosQuerySysState. So no thunking is required and
OProcStat can be used with Borland, Metaware and gcc/emx as well.
The reference book has been updated, but it's far from complete. We're
working on this topic.
Hi, gcc-users - give it a try! Please report everything, success or
problems, to the mail address printed in the OCL Reference Book.
You need the following archives:
Users of OCL 1.10 can use the Installation and Maintenance Tools shipped
with this release.
Kalin Wilson (kwilson@mnsinc.com) writes:
Just wanted to send along my appreciation for your great product! I have
been reading your magazine for several months now and have managed to catch
up on many of the back issues. I have really learned a lot. I think I get
more out of EDM/2 than OS/2 Developer or any other programming mag I get.
Your web page is a big bonus. I have been archiving all the issues not on
my Hobbes CDROM but it's nice to know I can get any issue from the web
site.
You're on my hotlist!
EDM/2 (Carsten) Responds:
That's the same way I felt about EDM/2 when I first started reading it. I
hope we can continue to provide this kind of service to OS/2 programmers
everywhere, and if you should ever want to contribute an article or a
column, you know where to reach us.
Niall Kavanagh (niall@peersa.iii.net) writes:
Just a quick note to say Thank you! Armed with EDM/2- Intro. to
PM programming and _Real World Programming for OS/2_ I have successfully
completed my first PM application! Keep up the great work!
EDM/2 (Carsten) Responds:
That is also one of my favorite books. There are other great ones, though.
Be sure to check the book review column from time to time. So, can we see
your program? <grin>
|