Article View: net.micro.pc
Article #8419The case for Borland's Turbo Pascal
From: Ted Holden
Date: Tue, 21 Oct 1986 01:29
Date: Tue, 21 Oct 1986 01:29
130 lines
7801 bytes
7801 bytes
All things being equal, i.e. in a world without Philippe
Kahn or Borland, I would rather program in C than in Pascal.
However, in the DOS world, all things are nowhere close to being
equal. Borland's Turbo Pascal should probably be the "standard"
programming language for 80 percent of the programming which gets
done (outside of professional software houses such as Ashton-
Tate) on today's XTs and ATs etc. A catalogue of justifications
for this statement will seem long-winded, but here goes:
1. Price: at a retail price of around $70 and a street price
of around $55, Turbo is nearly free. Reasonable DOS C
compilers go for around $300 and the only reasonable C
INTERPRETER goes for around $450. Keep this point in mind;
compilers and interpreters both have their place in the
scheme of things and Turbo functions as both. Few if any
other packages make this claim.
2. Turbo, both in its interpreter (actually, compile to memory)
and its compile (to .com) modes, produces very fast code.
Further, the compiler itself is almost supernaturally fast,
typical 2000 line programs compiling in 15 seconds on 6mh
ATs. A CCI Power-6 (rated 10 times VAX 780 compute power)
cannot match this with one user on the system. This is like
having your cake and eating it; my understanding is that
Turbo generates something closely akin to the old UCSD P
code as lines are keyed in and runs from there when the
compile directive is given. Most DOS C compilers, by the
way, will take several minutes to compile a 2000 line
program, even on an AT. Such differences in compiler speed
will translate into a programmer getting 10 shots at solving
a problem in an hour, versus two.
3. Turbo has the only completely believable debugging system in
the Micro world. All other debugging systems amongst
micros, to my knowledge, involve breakpoints and single
stepping. In real life, blowups in real-world programs
usually occur on the 876'th pass of some 200 line logical
loop; who in hell wants to single step through all of that?
The ONLY thing I ever want to know when a program blows up
is the line number on which it blew; Turbo not only tells
me that, it puts me right on that line in its editor.
4. Turbo is a cleanly and elegantly structured language; it is
relatively easy to write large and logically complex
programs and have the logic of them be visible to the
programmer maintaining the software. This is the point on
which Basic fails outright.
5. Turbo is a large super-set of standard Pascal, with a
tremendously good interface into DOS and PC functionality,
things which lie outside of any of the ANSI standards for
programming languages. It is actually better than Basic in
this regard. It actually allows machine-coded routines to
be imbedded right into Turbo routines (Turbo inline code),
allows DOS calls with the use of only one simple register
structure, and has easy systems for addressing segments and
offsets of Turbo variables, labels etc. Such code can be
made as fast as is possible on 80x86 devices. Masm
interfaces for the various C compilers are not as clean or
elegant.
6. Turbo has several good systems for dealing with graphics
applications, including the "turtle" system. These
capabilities go beyond those of Basic or other programming
languages available for DOS machines.
7. Turbo is heavily supported by after-market and free-ware
packages and applications. Typical bulletin boards in the
DC area will have 20 C-related files on hand, 45 Basic
files, and 200 Turbo files. C programmers end up spending
an extra $100 or $200 for a new function library every time
they turn around. For Turbo, an unbelieveable number of
such items are lying around free. Things of this nature
which are lying about on the various D.C. area BBS's and
from the PC SIG (and which are, hence, free) include:
a. A sprite editor and very clean and elegant system
for producing animation and cartoon effects using
Turbo.
b. An assembler which generates accurate Turbo inline
code. This is a biggie and could be used to do
nearly anything which could ever be done on a PC.
c. A good screen font creation and editing system for
Turbo.
d. A system for handling Dbase3 files.
e. A system for handling Lotus (wks) files.
f. A good asynchronous line handling routine for use
in writing communications packages.
g. Several very good general purpose window and
menuing packages etc., including one, the
"Boosters" library, which is comparable to the
best C library I've seen.
h. A fast-fourrier transform system.
i. A system for writing memory-resident programs in
Turbo.
j. A system for executing other programs from within
a Turbo program.
A user willing to spend a little money judiciously has some
even more interesting options, most notably the TurboPower TP
compiler which compiles to .exe files and can generate large-
model (640K) code and do linking. This one goes for about $70.
The TurboPower system answers the only semi-major problem most
users would have regarding Turbo, i.e. "What do you do when you
need to write really big programs?".
The other thing which bothers some people regarding Turbo is
the fact that it isn't totally "standard". This is the one case
I know of in which the Ansi standard is really kind of a joke.
With 500,000 users, Turbo IS the real standard for Pascal
in the Micro World, pure and simple.
Technical Details
Message-ID:
<631@imsvax.UUCP>Path:
arc1-ca.pugleaf.net!utzoo!watmath!clyde!caip!rutgers!husc6!seismo!elsie!imsvax!tedShow Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: arc1-ca.pugleaf.net!utzoo!watmath!clyde!caip!rutgers!husc6!seismo!elsie!imsvax!ted From: ted@imsvax.UUCP (Ted Holden) Newsgroups: net.micro.pc Subject: The case for Borland's Turbo Pascal Message-ID: <631@imsvax.UUCP> Date: Mon, 20-Oct-86 21:29:42 EDT Article-I.D.: imsvax.631 Posted: Mon Oct 20 21:29:42 1986 Date-Received: Wed, 22-Oct-86 01:17:49 EDT Organization: IMS Inc, Rockville MD Lines: 130