%token LPAR RPAR EOF %token INT %start s %type s %% s: | trees EOF {$1} | EOF {Tree.Leaf 0} trees: | tree0 trees {Tree.Node ($1, $2)} | tree0 {$1} tree0: | LPAR RPAR {Tree.Leaf 0} | LPAR trees RPAR {$2} | INT {Tree.Leaf $1}