recursive regexes == grammar