Another question, why do: ?
I find this a false polymorphism and its usage is rather hard to trace...


2013/10/26 <commits@source.squeak.org>
Chris Muller uploaded a new version of System to project The Trunk:
http://source.squeak.org/trunk/System-cmm.610.mcz

==================== Summary ====================

Name: System-cmm.610
Author: cmm
Time: 26 October 2013, 2:17:09.114 pm
UUID: a27149c5-0fd6-4bef-a34a-57db707aec83
Ancestors: System-dtl.609

Consider valueWithAllPossibleArguments: special enough to inline, for now.

=============== Diff against System-dtl.609 ===============

Item was changed:
  ----- Method: SmalltalkImage>>do: (in category 'command line') -----
  do: aBlock
+       [ [ (aBlock numArgs = 1 and: [ self arguments size > 1 ])
+                 ifTrue: [ aBlock value: self arguments ]
+                 ifFalse: [ aBlock valueWithEnoughArguments: self arguments ] ]
-       [ [ aBlock valueWithAllPossibleArguments: self arguments ]
                on: ProgressInitiationException
                do:
                        [ : pie | "Don't want to log this notification."
                        pie defaultAction ] ]
                on: Notification , Warning
                do:
                        [ : noti | StandardFileStream stdout
                                 nextPutAll: DateAndTime now asString ;
                                 space ;
                                 nextPutAll: noti description ;
                                 cr.
                        noti resume ]
                on: SyntaxErrorNotification
                do:
                        [ : err | StandardFileStream stdout
                                 nextPutAll: err errorCode ;
                                 cr.
                        self haltOrQuit ]
                on: Error
                do:
                        [ : err | err printVerboseOn: StandardFileStream stderr.
                        self haltOrQuit.
                        err isResumable ifTrue: [ err resume ] ]!