Related articles |
---|
Applesoft tokenization phases? drikosev@gmail.com (Ev. Drikos) (2020-03-12) |
Re: Applesoft tokenization phases? gneuner2@comcast.net (George Neuner) (2020-03-13) |
Re: Applesoft tokenization phases? awanderin@gmail.com (awanderin) (2020-03-16) |
Re: Applesoft tokenization phases? drikosev@gmail.com (Ev. Drikos) (2020-03-18) |
Re: Applesoft tokenization phases? christopher.f.clark@compiler-resources.com (Christopher F Clark) (2020-03-20) |
Re: Applesoft tokenization phases? martin@gkc.org.uk (Martin Ward) (2020-03-21) |
From: | Christopher F Clark <christopher.f.clark@compiler-resources.com> |
Newsgroups: | comp.compilers |
Date: | Fri, 20 Mar 2020 07:06:55 -0400 |
Organization: | Compilers Central |
References: | 20-03-013 20-03-016 20-03-017 |
Injection-Info: | gal.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970"; logging-data="86364"; mail-complaints-to="abuse@iecc.com" |
Keywords: | Basic, history, lex |
Posted-Date: | 20 Mar 2020 11:46:44 EDT |
Jerry Awanderin wrote:
> > Also, an online AppleSoft simulator at calormen.com [3] accepts ie both
> > DIFF and FEND as valid variable names.
>
> It is doing things differently than actual Applesoft.
>
> > As it seems, this issue can affect a design choice for the tokenization
> > phases of an Applesoft front-end. Is the manual just informative or the
> > online simulator does not accept (precisely) the particular dialect?
>
> The latter; the simulator accepts a different dialect.
For situations like this, we added classes (and inheritance) to Yacc++
lexers and parsers, so that one could define a common subset and then
extend it to cover the cases that are unique or different dialects.
However, one can do similar things with lexer states, flag/switch
variables, or a host of other techniques. You just have to decide how
much mess you are willing to handle and how important supporting the
variations are.
There is a reason, BASIC compilers that remove spaces often restrict
variables (like the original Basic version did) to a letter optionally
followed by a digit (and a dollar sign to indicate strings). It makes
the lexing much simpler, even without spaces.
--
******************************************************************************
Chris Clark email: christopher.f.clark@compiler-resources.com
Compiler Resources, Inc. Web Site: http://world.std.com/~compres
23 Bailey Rd voice: (508) 435-5016
Berlin, MA 01503 USA twitter: @intel_chris
Return to the
comp.compilers page.
Search the
comp.compilers archives again.