BASIC's question mark and PRINT

Cini, Richard Richard.Cini at wachovia.com
Mon Nov 21 15:18:07 CST 2005


That was to permit parsing the table for the end of the keyword. Although I
haven't investigated other BASICs, I know for a fact that Commodore BASIC
used that method. Supposedly, all of the micro BASICs were compiled from the
same source tree using a bunch of #if/#endif-like switches. ISTR that
Microsoft used some sort of intermediate language or series of complex
macros to facilitate being to compile a version of BASIC for almost any
machine. 

Indeed, ASCII(63) is the question mark character. 

-----Original Message-----
From: cctalk-bounces at classiccmp.org [mailto:cctalk-bounces at classiccmp.org]
On Behalf Of Gordon JC Pearce
Sent: Monday, November 21, 2005 4:09 PM
To: On-Topic and Off-Topic Posts
Subject: Re: BASIC's question mark and PRINT

Jim Battle wrote:

> Allison, that seems unlikely.  Later versions of microsoft basic 
> certainly didn't use any value lower than 0x80 for tokens.  Even if you 
> could find a few characters in the "live" portion of the ascii table 
> that didn't lead to ambiguous parsing, I can't think of a good reason 
> why they'd do it -- there was enough room at 0x80 and above, and not 
> enough unused values below 0x80, so why have two lookup tables when one 
> would do?

Aha - didn't the last letter of each keyword have bit 7 set?

That would mean that it would be 63+128 = 191

Just a thought.

Gordon.


More information about the cctalk mailing list