| EXTERN VAL SYMBOL COLON typ (DExternVal (SYMBOL, typ))
| VAL SYMBOL EQ exp (DVal (SYMBOL, NONE, exp))
| VAL SYMBOL COLON typ EQ exp (DVal (SYMBOL, SOME typ, exp))
| EXTERN VAL SYMBOL COLON typ (DExternVal (SYMBOL, typ))
| VAL SYMBOL EQ exp (DVal (SYMBOL, NONE, exp))
| VAL SYMBOL COLON typ EQ exp (DVal (SYMBOL, SOME typ, exp))