Re: 4GL language design, was Writing a recursive descent parser in C

alexc@world.std.com (Alex Colvin)
11 Dec 2001 21:10:10 -0500

          From comp.compilers

Related articles
Writing a recursive descent parser in C bilbo@volcanomail.com (2001-11-29)
Re: Writing a recursive descent parser in C spinoza1111@yahoo.com (2001-12-03)
Re: Writing a recursive descent parser in C lingolanguage@hotmail.com (Bill Rayer) (2001-12-07)
Re: 4GL language design, was Writing a recursive descent parser in C spinoza1111@yahoo.com (2001-12-09)
Re: 4GL language design, was Writing a recursive descent parser in C alexc@world.std.com (2001-12-11)
Re: 4GL language design, was Writing a recursive descent parser in C lingolanguage@hotmail.com (Bill Rayer) (2001-12-11)
Re: 4GL language design, was Writing a recursive descent parser in david.thompson1@worldnet.att.net (David Thompson) (2001-12-27)
Re: 4GL language design, was Writing a recursive descent parser in C pcc@ecet.vtc.edu (Peter) (2001-12-29)
Re: 4GL language design, was Writing a recursive descent parser in C rajat@austin.rr.com (Rajat Datta) (2001-12-29)
| List of all articles for this month |

From: alexc@world.std.com (Alex Colvin)
Newsgroups: comp.compilers
Date: 11 Dec 2001 21:10:10 -0500
Organization: The World Public Access UNIX, Brookline, MA
References: 01-11-146 01-12-008 01-12-020 01-12-040
Keywords: design, parse
Posted-Date: 11 Dec 2001 21:10:10 EST

>> I'm interested that some 4GLs mix up the scanning and parsing stages.
>> What 4GLs do you consider to be most deficient in this way? And what


>Most have been fortunately dropped from use, but a good example might
>be various flavors of Basic implemented in the 1970s for a range of
>minicomputers. The use of postfix type characters by older Basics and


Most Basic systems I used did not treat the postfix "$" as an
operator, but effectively as part of the identifier (A$ was no
relation to A). DEC's Edusystem Basic was an exception, where A$ was
the character encoded in A.


Neither seemed to cause much confusion. Of course, I don't know what
else was marketed as Basic.


Then there was OCCAM, where indentation determines block
structure. I've never haad a chance to try this, and I'm not sure how
to implement it, but it looks like a nice idea. In most cases the
programmer indents, but the compiler ignores it and uses other
signs. Inevitably, the programmer and the compiler disagree.


>> do you consider the most pathological languages? I'm not trying to
>> start a religious war here, I'm interested in language design - good
>> and bad!


>My view is that the Algol 60 team discovered a reality about applied
>mathematics (of computation and programming) at least as important as


would you say that LISP missed this reality?
--
mac the naïf
[Dartmouth Basic, as opposed to its bastard mutant offspring, had a
quite reasonable syntax and had one of the fastest compilers I've ever
seen. It'd usually have the program compiled in less time than it
took for the carriage on your ASR-33 Teletype to return after you
typed RUN. Block structure by indentation has been used many times,
notably in Python. -John]



Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.