support on-the-fly naming of productions by introducing the 'named' combinator