On Fri, 15 May 2020 at 20:43, Richard O'Keefe <rao...@gmail.com> wrote:
> Why does it make no sense? > To a first approximation, > aCollection asWHATEVER > = > WHATEVER withAll: aCollection > > Consider > 'CAB' asSet > 'CAB' asArray > 'CAB' asSortedCollection > 'CAB' asBag > and so on. They all mean "an instance of the class named > in the selector with the elements of the receiver." > Why should #asString be any different? > Good point. There may be counter arguments (I've only considered this briefly) but where possible it seems reasonable that the asXXXX selectors should be able to round-trip. i.e... 'abc' asByteArray asString ==> 'abc' in which case... 'abc' asArray asString ==> '#($a $b $c) seems wrong. That result seems more suitable to #printString or #displayString, particularly considering Richards next insight... > Why on earth does #($a $b $c) asString make no sense > when #($a $b $c) as: String > -- which we expect to do the same thing -- DOES apparently > make sense? > cheers -ben