Re: Fast LR algorithms (David Keppel)
Wed, 16 Oct 91 03:44:25 GMT

          From comp.compilers

Related articles
Fast LR algorithms (1991-10-15)
Re: Fast LR algorithms (1991-10-16)
| List of all articles for this month |

Newsgroups: comp.compilers
From: (David Keppel)
Keywords: parse, performance, bibliography
Organization: Computer Science & Engineering, U. of Washington, Seattle
References: 91-10-051
Date: Wed, 16 Oct 91 03:44:25 GMT (Mike Haertel) writes:
>[Speed of the resulting parsers, rather than parser generation times.]

Performance can be improved by combining the parse tables and the
interpreter that traverses them, partially evaluatating the interpreter
with resepect to each table entry.

;-D on ( Impartial Evaluation ) Pardo

3 Citations follow:

%A Chris W. Fraser
%A Robert R. Henry
%T Hard-Coding Bottom-Up Code Generation Tables to Save Time and Space
%R Technical Report 90-01-03
%I University of Washington Department of Computer Science and Engineering
%C Seattle, Washington 98195
%D JAN 1990

%A Frank G. Pagan
%T Comparative Efficiency of General and Residual Parsers
%J SIGPLAN Notices
%V 25
%N 4
%D April 1990
%P 59-68
%X * Concise and good introduction to partial evaluation
  * Focus on partial evaluation of parsers generating pure code.
  * Hand traslation of Pascal and C.
  * Time (2-10X faster) and size (0.5-1.25 larger).
  * View as explicit partial evaluation of parser wrt to grammar, but
doesn't see that it is also partial evaluation of interpreter wrt a

%A Thomas J. Pennello
%T Very Fast LR Parsing
%J Proceedings of the SIGPLAN 1986 Symposium on Compiler Construction;
%V 21
%N 7
%D July 1986
%P 145-151
%X * Partial evaluation of the table interpreter with resepct to each
element of the table (though not recognized as such...)
  * Speedup: on a VAX-like machine, 40,000 to 500,000 lines per minute.
On an 80286, 37,000 to 240,000 lines per minute.
  * FSM converted to assembly language.
  * 2-4X increase in table size.

Post a followup to this message

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