Maybe from Programming Perl.
Add more cases.