On 06/26/2016 12:47 PM, Christopher Reimer wrote: > I started writing a BASIC interpreter in Python. The rudimentary version > for 10 PRINT "HELLO, WORLD!" and 20 GOTO 10 ran well. The next version > to read each line into a tree structure left me feeling over my head. So > I got "Writing Compilers & Interpreters: An Applied Approach" by Ronald > Mak (1991 edition) from Amazon, which uses C for coding and Pascal as > the target language. I know a little bit of C and nothing of Pascal. > Translating an old dialect of C into modern C, learning Pascal and > figuring out the vagaries of BASIC should make for an interesting > learning experience.
Sounds like fun. Every aspiring programmer should write an interpreter for some language at least once in his life! I imagine that any modern dialect of BASIC has a very complex grammar. The syntax is full of ambiguities, of which the "=" operator is the least of them. In many dialects there several versions of END to contend with, for example. And then there are a lot of legacy constructs with special syntax such as LINE (0,0)-(100,100),3,BF. I have a soft spot in my heart for BASIC, since that's what I grew up on. I still follow FreeBASIC development. It's a very mature language and compiler now, though it struggles to find a reason to exist I think. It can't decide if it's C with a different syntax, or C++ with a different syntax (object-oriented and everything) or maybe something in between or completely different. -- https://mail.python.org/mailman/listinfo/python-list