DOC ::= RULE*
RULE ::= TARGET rarrow DEPS BLOCK
TARGET ::= ident+
DEPS ::= ident*
BLOCK ::= obrace CMD_LST cbrace
CMD_LST ::= (CMD (comma CMD)* comma?)?
CMD ::= ident*