bexpr : '(' ')' { $$ = mkterm("()"); } | '(' term ')' { $$ = $2; } | '{' '}' { $$ = mkterm("{}");; } | '{' term '}' { $$ = mkterm("{}",$2); } | '(' term COMM clist ')' { $$ = mkterm(strof($3),$2,$4); } | '(' term '.' term ')' { $$ = mkterm("#dot:",$2,$4); } ; expr : bexpr | lexpr | sexpr | EXPR { /* from defaults */} ;