Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.compilers > #897

Re: Articles/books that discuss separating the context-free part of a language from the context-sensitive part?

From glen herrmannsfeldt <gah@ugcs.caltech.edu>
Newsgroups comp.compilers
Subject Re: Articles/books that discuss separating the context-free part of a language from the context-sensitive part?
Date 2013-05-18 00:18 +0000
Organization Aioe.org NNTP Server
Message-ID <13-05-011@comp.compilers> (permalink)
References <13-05-010@comp.compilers>

Show all headers | View raw


Costello, Roger L. <costello@mitre.org> wrote:
> I read this fantastic post on the comp.theory list:

> http://coding.derkeiler.com/Archive/General/comp.theory/2004-03/0189.html

> The poster makes the point that most programming languages define a
> context-free core, and then have additional algorithms which run on the parse
> tree to filter out constructs that are illegal in the language:

(snip)

> [That's been the conventional wisdom at least since I took a compilers
> course in the early 1970s.  I believe I mentioned it in lex&yacc and
> later in flex&bison.  It's easier, and it also permits much better
> error messages. -John]

As I remember it, it is not so easy to do for recursive descent
parsers. As a result, as noted, you get poor error messages, such as:

   SYNTAX ERROR

somewhere near where the problem is. For languages with reserved works,
it is nice to say exactly what the problem is. It gets more
interesting without reserved words. Yesterday, following a post
in comp.lang.fortran I tried:

TYPE :: DEEP
   TYPE(DEEP) :: POINTER
END TYPE

When compiling it, the error message, pointing right to the
word POINTER, say "must have POINTER attribute".

Fortunately it only took me a few seconds to figure out, and then
laugh at it. But yes, you can get funny messages without reserved
words.

-- glen

Back to comp.compilers | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Articles/books that discuss separating the context-free part of a language from the context-sensitive part? "Costello, Roger L." <costello@mitre.org> - 2013-05-17 20:57 +0000
  Re: Articles/books that discuss separating the context-free part of a language from the context-sensitive part? glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2013-05-18 00:18 +0000
    Re: Articles/books that discuss separating the context-free part of a language from the context-sensitive part? Gene Wirchenko <genew@telus.net> - 2013-05-19 18:02 -0700
      Re: Articles/books that discuss separating the context-free part of a language from the context-sensitive part? glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2013-05-20 03:17 +0000
  Re: Articles/books that discuss separating the context-free part of a language from the context-sensitive part? Aleksey Demakov <ademakov@gmail.com> - 2013-05-18 16:52 +0400
  Re: Articles/books that discuss separating the context-free part of a language from the context-sensitive part? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-05-20 10:53 +0000
    Re: Articles/books that discuss separating the context-free part of a language from the context-sensitive part? Gene Wirchenko <genew@telus.net> - 2013-05-20 23:24 -0700
    precedence have both ways jgk@panix.com (Joe keane) - 2013-05-30 23:21 -0400
      Re: precedence have both ways glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2013-05-31 05:10 +0000
      Re: precedence have both ways anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2013-05-31 10:54 +0000

csiph-web