in reply to subroutine within regex quantifier?

Subroutines and method calls don't interpolate inside strings or regexes. However, there's a common trick for interpolating an arbitrary expression inside a double-quoted string, that will work just as well in a regex:
"@{[ reverse 1 .. 3 ]} go!" # reverse 1 .. 10 is in list context "2 + 2 = ${\( 2 + 2 )}"; # 2 + 2 is in scalar context
So, you could write your regex in one of these ways:
/^[a-z]{@{[ WORD_LENGTH ]}}$/i /^[a-z]{${ \WORD_LENGTH }}$/i
Although they might be hard to read... :)