[comp.sys.ibm.pc] Re^2: TrueBASIC

leonard@bucket.UUCP (Leonard Erickson) (08/19/89)

bpendlet@bambam.UUCP (Bob Pendleton) writes:

<From article <14980@dartvax.Dartmouth.EDU>, by stevel@eleazar.dartmouth.edu (Steve Ligett):

<> Whoa, I thought that Turbo BASIC and Microsoft's QuickBasic were ANSI, or
<> ANSI-like.  True BASIC is NOT like the old (PC or GW) BASIC.  Thank
<> goodness.  They do include a "converter" that might be useful in
<> changing PC-BASIC to True BASIC.


<The question is; which ANSI Basic?

<There is ANSI BASIC, which TrueBASIC implements. And, there is ANSI
<Minimal BASIC. ANSI Minimal BASIC is a subset of GWBasic. Or maybe I
<should say that in the process of creating GWBasic, microsoft BASIC
<was extended so that it included all of ANSI Minimal BASIC as a
<subset. 

At the time GW-BASIC was written, ANSI Minimal BASIC was ANSI BASIC.
It wasn't until a lot later that the current ANSI BASIC standard demoted
the old one to "ANSI Minimal BASIC".

ANSI BASIC isn't making inroads on PCs because it is sso incompatible
with *all* the existing PC BASICs. True Basic is the *only* ANSI
compiler for Micros. At the time the standard was adopted I heard
some speculation that the standard had gone out of it's way to be
in compatible with Microsoft.

There are good reasons why micro BASICs's are interpreted. They're
intended to be used in machines with almost no resources, and *very*
novice users. Can you picture trying to have the typical *home* user
do an edit/link/compile cycle? And the PC started outas a *cassette*
machine... don't even think about compiling in *that* environment!

-- 
Leonard Erickson		...!tektronix!reed!percival!bucket!leonard
CIS: [70465,203]
"I'm all in favor of keeping dangerous weapons out of the hands of fools.
Let's start with typewriters." -- Solomon Short

gek@earnest (Jerry Kreuscher) (08/21/89)

Very late in the ten year long process of inventing the standard, I
attended three ANSI BASIC technical committee (X3J2) meetings on
behalf of a former employer.  The members with whom I spoke expressed
great distaste for GWBASIC.  They were resolved to standardize an
entirely different, incompatible dialect, and they had no care that
this would be an invention rather than a standardization.

Microsoft did not care to participate in the work of X3J2.
Interpreters in the style of GWBASIC were and still are the defacto
standard.  It appeared that Microsoft considered the work of X3J2 to
be irrelevant.  Outside of Dartmouth and NBS (now NITS), most of the
world agrees.

I am surprised to read in this newsgroup that TrueBASIC conforms to
the standard.  I remember being surprised to find that release 1.0 did
not conform.  It was advertized to be "based on" the standard, but it
was based on the (then "proposed") standard in approximately the same
sense that movies on television sometimes are based on novels that I
have read.  Has that changed?

The only released conforming implementation that I have seen comes
from NKR Research of San Jose, CA.  I have no information about the 
machines to which it has been ported, though.

Jerry Kreuscher (gek@sun.com)

Disclaimer:  I speak only for myself.

bpendlet@bambam.UUCP (Bob Pendleton) (08/22/89)

From article <1635@bucket.UUCP>, by leonard@bucket.UUCP (Leonard Erickson):

> At the time GW-BASIC was written, ANSI Minimal BASIC was ANSI BASIC.

Restate that as "At the time GW-BASIC was written, ANSI Minimal BASIC
was the ONLY ANSI BASIC" and I'll buy it. Back in '79 I was working
from a document that clearly had the words "Minimal BASIC" on the
cover. 

And Yes, I've worked on implementations of both ANSI Minimal BASIC and
ANSI BASIC. Neither product was ever released, but thats the way it
goes sometimes. 

I recieved my first public review copy of the ANSI BASIC standard in
'81 or '82. The ANSI Minimal BASIC standard preceded the ANSI BASIC
standard by several years. 

> It wasn't until a lot later that the current ANSI BASIC standard demoted
> the old one to "ANSI Minimal BASIC".

What can I say, go check the dates on the two standards.

> There are good reasons why micro BASICs's are interpreted. They're
> intended to be used in machines with almost no resources, and *very*
> novice users. 

This is a slam to both PCs and users. A modern PC has more memory and
more processing power than a large mainframe had in the early sixties.
I don't think anyone sells a machine with as little memory as the
machine on which LISP and FORTRAN were originally developed. 

I've found that "very novice" usually means "Not indoctrinated," that
is, unwilling to put up with the garbage we computer folks have come
to accept as normal. 

> Can you picture trying to have the typical *home* user
> do an edit/link/compile cycle? 

Nope, I can't. Do you really believes that the only way to use a
compiler is to go through an edit/link/compile cycle? Have you ever
heard of incremental compilation? How about fast memory to memory
compilers? How about parse on entry with demand code generation. How
about dynamic linking? They all work. They all give you compiled code
execution speeds without an edit/link/compile cycle. 

> And the PC started outas a *cassette*
> machine... don't even think about compiling in *that* environment!

My first personal computer was a 2MHz Z80 with 32K of RAM and a 1200
baud cassete interface. It had Microsoft 8k BASIC in a plug in ROM. I
wrote 2 compilers and a LISP interpretor in BASIC for it. Even the
memory to memory compiler was pretty slow. All this just to say it
isn't unthinkable and wasn't unthinkable back in those bad old days. 

When was the last time you saw a PC with a cassette? An 8088 with 256K
and 1 360K floppy is all you really need to run an interactive
compiler. Assuming the compiler is designed and written to conserve
resources. 


			Bob P.
-- 
              Bob Pendleton, speaking only for myself.
UUCP Address:  decwrl!esunix!bpendlet or utah-cs!esunix!bpendlet

           Reality is stanger than most people can imagine