EL parser based on parser combination

.r is an implicit, not a macro, so it's invoked on every expr call (as it's a def). Please extract the regex into a val so it's compiled only once.