feed

RCC Feature List

RCC is a LALR(1) compiler compiler, written in Ruby, and supporting (theoretically) any output language.

Declarative grammar:

  • grammar is purely declarative and is therefore output-language-independent
  • parser is generated as a class, and action code is added by subclassing and defining “event handler” methods

Generated components include:

  • lexer
  • parser
  • AST classes
  • AST construction code
  • error recovery system
  • grammar help system

Additional features:

  • optional backtracking support, for dynamic resolution of ambiguous grammars
  • error recovery system in generated parser that engages when a syntax error is detected:
    • allows parsing to continue beyond the first error
    • provides user with higher-quality error messages, that are more likely to identify the cause of an error, and not just its effect
    • error report includes suggested repairs for the error

Debugging tools:

  • a grammar interpreter that explains how your grammar actually works on a particular source file, including clear descriptions of why it is making the choices it is making

Site copyright 2007-2008 Chris Poirier.       Powered by Wordpress.       Entries RSS Comments RSS Validate Log in