From: PHILIP BURNS (Message from the SMUG BBS, Formerly SUGI/SIG, Rockville) I received my copy of Turbo 3.0 today. I have only worked with it for a few hours, but my initial impressions are extremely positive: (1) All the bugs I encountered in release 2.0 have been fixed. (2) The compiler is AT LEAST twice as fast as before. For example, a 10000+ line program I have which used to take 9+ minutes to compile now compiles in less than four minutes. (3) The generated code is substantially smaller -- as much as 35% for some of my programs -- and runs considerably faster. (4) The editor appears to run much faster -- nearly instantaneous screen updates, etc. (5) The PC/DOS version (which I am using) includes standard procedures for directory access and manipulation. In addition, file names may now contain drive/subdirectory information: a file name like 'C:\mydirec\myfile.dat' is now legal. (6) The installation program allows you to define the drive/directory for the message file. No more having to have multiple copies strewn all over your disks! (7) The are a number of system-interface procedures for getting command line arguments, defining a path for TURBO overlays, etc. (8) There are a number of advanced graphics functions -- for generating circles, fill patterns, etc. -- as well a very nice implementation of Turtle graphics. (9) Full I/O redirection on standard files is provided. The run-time package also uses standard MS DOS file handles. NOTE: THIS MEANS THAT TURBO 3.0 WILL ONLY RUN UNDER MSDOS/PCDOS RELEASE 2.0 OR LATER! (10) You can change buffer sizes for files. (11) You can open a file for append. (12) Text I/O is considerably faster -- especially with larger buffer sizes -- and a number of new procedures are available for manipulating text files. (13) External assembler procedures appear to work correctly now. (14) The BCD version provides nice editing facilities for numbers, which should ease writing business-oriented programs. On the negative side, there are a few things still missing: (1) Still no integer type > 16 bits. (2) Still no out-of-block GOTOs. (This hinders writing parsers using recursive descent.) (3) The 8087 version still only supports the 64-bit real -- no 32 bit reals, no 80 bit reals, no long integers, etc. (4) There are quite a few errors in the published documentation. Hence, you MUST READ CAREFULLY the README file enclosed on the distribution disk. One word of caution about Turbo 3.0 -- in fixing the EOLN and related functions, Borland changed their function a little when applied to Kbd. If you apply EOLN to KBD, you'll find things get a little behind -- there's a one-character delay. This means that if you wrote your own procs to process/edit input lines, and you used EOLN(Kbd), then THEY WON'T WORK ANYMORE. The easiest fix is to check for a carriage return character and not bother with the EOLN -- not exactly standard Pascal, but what the heck, who cares anyway.