The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
%token ID  = /([A-Za-z]\w*)/
%token NUM = /(\d+)/

%left   ','
%left   '-' '+'
%left   '*' '/'

%%
range: expr '..' expr ';'
;

expr : '(' expr ')'   
    | %name PLUS     expr '+' expr
    | %name MINUS    expr '-' expr
    | %name TIMES    expr '*' expr
    | %name DIV      expr '/' expr
    | %name COMMA    expr ',' expr
    | %name ID:RANGE
      ID                     
    | %name NUM      NUM
;

%%