Smalltalk(特別是Squeak/Pharo)具有某種形式的可變參數函數嗎?Smalltalk可變參數函數
我只是在閱讀有關在smalltalk中設計自己的控制語句的權力,而我是ifTrue的忠實粉絲:ifFalse:我很難想出實現任意if的好方法if否則,如果其他,...,否則陳述思考如何有用Variadic功能這些將用於實施案件陳述。喜歡的東西
假類
ifTrue: aBlock (... elseIf: aBoolean then: aSecondBlock ...) else: aLastBlock
vArgList pairsDo: [:x :y| x ifTrue:[^ (y value)] ].
^ aLastBlock
作爲一般原則,我同意。對於Andreas Raab在DnsClient(在SqueakSource上)使用#caseOf:otherwise:來說,我很難看出如何改進可讀性。 – 2010-10-12 09:21:55