On Dec 3, 2009, at 23:10 , St�phane Ducasse wrote:
>> From: Sheridan Mahoney <
sheridan@sheridan-mahoney.com>
>> Date: December 3, 2009 11:04:19 PM GMT+01:00
>> To:
pharo-project-bounces@lists.gforge.inria.fr
>> Subject: Re: getting rid of Symbol >> new: ?
>> Reply-To:
sheridan@sheridan-mahoney.com
>>
>>
>> A colleague and I are investigating the ImageSegment class and its
>> methods, we came across an issue I would like to get external
>> opinions on. �Newbie alert, BTW (at least one of us, no names
>> mentioned...). �Also, this is not a problem that will affect many
>> users, but it is familiarizing us with the check-in process,
>> slices, etc. �While working on ImageSegment tests, we discovered a
>> problem on trying to load segments that had Symbols in the root
>> array. �It is possible to create 2 ByteSymbols with the same
>> sequence of characters. �:( �In trying to track down how this is
>> possible, we came across a side issue, that � ByteSymbol new: � had
>> the capacity to create multiple new ByteSymbols with the same
>> number of nil characters (as in, initialized with nil). �We want to
>> dissallow � Symbol new: � , which would cause people to use one of
>> the nicer methods for Symbol/ByteSymbol creation (namely, one which
>> checks that the sequence of characters doesn't already exist, as
>> part of the creation process). �We have a fix we want to check in,
>> but currently it breaks a test case in the SymbolTest class, which
>> is checking that � new: � works. We also changed the � intern:
>> method on the class side of Symbol to use � basicNew: � instead
>> of � new: � . �Are there reasons to keep 'Symbol new:' , that
>> outweigh the reasons to get rid of it?
>> Many thanks,
>> and Cheers,
>> Sheri Mahoney
>