in reply to Puzzled by constant subs

Because it's parsed as:
sub three {one(+ two ())}
You are missing one piece of the puzzle to make constant subs: the prototype:
sub one () {1} sub two () {2} sub three {one + two}