1
  
2
  
3
  
4
  
5
  
6
  
7
  
8
  
9
  
10
  
START_MARKER 
test_program([[ Parser.LR.Parser p = 
  Parser.LR.GrammarParser.make_parser("foo : bar;foo : foo bar;bar : \"a\";"); 
  int pos; 
  array(string) data="aaaaaaaaa"/""; 
  string scan() { if (pos < sizeof(data)) return(data[pos++]); else return ""; } 
  int a() { return(p->parse(scan) == "a"); }]]) 
END_MARKER