LL(1) Parser Generator

Grammar Input

Grammar Rules

  • Epsilon is denoted with %
  • Grammar must have S as the start symbol
  • Rules are in form nonterminal > terminals/nonterminals ('>' can be used as a token)
  • Each token in a rule must be separated by a space
  • $ is reserved as EOF

Usage Notes

  • Any conflicts in the grammar will show up red on the table
  • Click 'Set' to start/reset parsing
  • The 'Next step' button will build the next production in the parse tree
  • The center button on the Dpad will extend the view port downwards for the tree
  • The rest of the buttons move the tree around in the view port
  • Nodes in the tree can be collapsed when clicked
First and Follow Sets
NonTerminals First Follow
Parse Table

Parse Input