%token NUMBER %token LPAREN %token RPAREN %token PLUS %token EOI /* 優先順位と連結性をここにかく */ %left PLUS /* 開始記号の定義 */ %type expr %type start %start start %% start: | expr EOI { $1 } expr: | NUMBER {Eval.Num($1)} | expr PLUS expr {Eval.Plus($1, $3)} | LPAREN expr RPAREN { $2 }