在Haskell(F#,ocaml的,和其他人)匹配,我可以這樣做:模式在Perl ALA哈斯克爾
sign x | x > 0 = 1
| x == 0 = 0
| x < 0 = -1
,它計算給定整數的符號。
這可以簡潔地表達某些邏輯流程;我在Perl中遇到過這些流程之一。
現在我正在做的事情是
sub frobnicator
{
my $frob = shift;
return "foo" if $frob eq "Foomaticator";
return "bar" if $frob eq "Barmaticator";
croak("Unable to frob legit value: $frob received");
}
這感覺無表情的和醜陋的。
此代碼必須在Perl 5.8.8上運行,但我當然也對更現代的技術感興趣。
我不知道你在找什麼。除了「if」和「return」之外的東西?用這個可以做的事情不多。使用散列? – TLP