SYNOPSIS
See
File
userange.pl.File pascalenumeratedvsrange.eyp in examples/debuggintut/
The Bison manual http://www.gnu.org/software/bison/manual/html_mono/bison.html
Compile it with:
eyapp -TC pascalnestedeyapp3.eyp
The compile it again, but using 'range' as start symbol (option -S) and option -P to generate a parser that accepts if a prefix of the input matches:
eyapp -P -S range pascalnestedeyapp3.eyp
Run it with this options:
$ ./pascalnestedeyapp3.pm -t -i -m 1 -c 'type e = (x) .. (z);'
$ ./pascalnestedeyapp3.pm -t -i -m 1 -c 'type e = (x, y, z);'
$ ./pascalnestedeyapp3.pm -t -i -m 1 -c 'type e = (x, @, z);'
Try also these inputs:
type e = (x) .. (y);
type r = (x) .. y ;
type r = (x+2)*3 .. y/2 ;
type e = (x, y, z);
type e = (x);
type e = (x, y, z) .. (u+v);