With all due respect to the author, Switch is no longer necessary in 5.10+ as 5.10+ already introduced smart matching and given(). given() is superior because it doesn't introduce compile-time overhead, doesn't mess line numbers, and should be faster (simply because smart match is fast, and Switch is not utilizing it).
You have been using 5.10+, right? (Since 5.8 is no longer officially supported)
An excellent and extremely versatile switch/case that I would use all the time if it did not completely confuse the Perl interpreter's idea of line numbering. Introduction of this switch makes debugging a nightmare, throwing off all line nubmer reporting in the module in which it is used.