grammar My::C; rule def { ';' } token type { int | float | double | char } rule var_list { **{1} [ ',' ]* } grammar My::VB; rule def { 'Dim' [ 'As' ]? }