It's such a common combination of operations that it's even got a name:
the baby cart.
perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'
| [reply] |
Excellent, tobyink! I enjoy what it says there:
Discovered by Larry Wall, 1994.
It's the Discovered part that's intriguing...
| [reply] |
A number of Perl's "features" are actually bugs that were discovered, found to be useful and have been documented and carefully preserved. One that springs to mind is that s/.../.../ee evaluates twice, s/.../.../eee evaluates thrice, etc.
I have a feeling that the baby cart is one of these.
perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'
| [reply] [d/l] [select] |