github.com/gaissmai/grammar (go): package grammar allows defining regexp rules with comments, whitespace and newlines to make them less dense, and easier to read:  result: [+-]?(\d+\.\d+|\d+\.|\.\d+|\d+)([eE][+-]?\d+)?  Complex rules can be assembled by simpler rules (subrules) using string interpolation.  Any number of rules can be added to a grammar, dependent or independent, as long as there are no cyclic dependencies.
Keywords: grammar|interpolated-strings|regexp