Implement `recurse` in catenation parser.

Closes #199.