[Pharo-dev] Old ClassBuilder remove!

phil at highoctane.be phil at highoctane.be
Thu Nov 21 08:40:40 EST 2013


facking awesome !

On Thursday, November 21, 2013, Camille Teruel wrote:

>
> On 21 nov. 2013, at 13:44, kilon alios <kilon.alios at gmail.com<javascript:_e({}, 'cvml', 'kilon.alios at gmail.com');>>
> wrote:
> A
>
> any links why newcomers like me should be impressed ? Whats the advantages
> ?
>
>
> That's just cleaning. The old class builder was an incredibly complex
> piece of code that is now replaced with the Slot class builder.
> The later is based on slots and is much more understandable and thus much
> easier to maintain.
> It's been integrated some time ago thanks to Martin.
>
> Slots are the work of Toon and Camillo and enables a lot of useful
> features:
>
> http://rmod.lille.inria.fr/archives/papers/Verw11a-OOSPLA11-FlexibleObjectLayouts.pdf
> They are based on the reification of class layouts (variable,weak,fixed
> and co) and instance variables (slots).
> Slots are an abstraction added on top of low-level class "fields".
> It means that one will be able to create a customized slot class that
> define the logic to read and write a slot:
>
> Object subclass: #MyClass
> slots: { x => MyFancySlot }
> category: 'Playground'
>
> Then when a method read or writes x, the logic you defined in MyFancySlot
> is executed.
> All that still need to be absorbed by Opal so it's not available right now
> but it will (Pharo 4)!
>
>
>
>
>
> On Thu, Nov 21, 2013 at 2:21 PM, Tudor Girba <tudor at tudorgirba.com<javascript:_e({}, 'cvml', 'tudor at tudorgirba.com');>
> > wrote:
>
>> Triple impressive! This is another sample of an apparently tiny change
>> that actually has deep impact on the future of our beloved environment.
>>
>> Ladies and gentlemen, I know you are busy, but please take the time to
>> acknowledge it :)
>>
>> Doru
>>
>>
>>
>>
>> On Thu, Nov 21, 2013 at 12:58 PM, Martin Dias <tinchodias at gmail.com<javascript:_e({}, 'cvml', 'tinchodias at gmail.com');>
>> > wrote:
>>
>>> wow, impressive!
>>>
>>>
>>> On Thu, Nov 21, 2013 at 9:02 AM, Marcus Denker <marcus.denker at inria.fr<javascript:_e({}, 'cvml', 'marcus.denker at inria.fr');>
>>> > wrote:
>>>
>>>> Hi,
>>>>
>>>> Yesterday Camille did the change to finally remove the old class
>>>> builder!
>>>> (just a removal + a small change to NativeBoost to use the new class
>>>> builder to create anonymous classes).
>>>>
>>>> This means
>>>>         - 1000 Loc of completely un-understandable code removed.
>>>>         -  we now 100% run on the new class builder from the Slot
>>>> Project.
>>>>
>>>> Next on the list (not all for Pharo3):
>>>>
>>>>         - remove PackageInfo
>>>>         - old Browser + CodeHolder hierarchy
>>>>         - PseudoClass&Co —> Ring
>>>>         - old AST+Compiler (this in Pharo4)
>>>>
>>>> We already did (all in Pharo3):
>>>>         -> remove URI
>>>>         -> deprecated Url for ZnUrl
>>>>         -> removed HTTPSocket facade
>>>>         -> MIMEType retired for ZnMimeType
>>>>         -> old Debugger is removed
>>>>         -> Class categories are replaced by Protocols
>>>>
>>>> I am quite sure that these cleanups will enable us to build a lot of
>>>> very interesting things
>>>> in the future.
>>>>
>>>>         Marcus
>>>>
>>>
>>>
>>
>>
>> --
>> www.tudorgirba.com
>>
>> "Every thing has its own flow"
>>
>
>
>

-- 
---
Philippe Back
Dramatic Performance Improvements
Mob: +32(0) 478 650 140 | Fax: +32 (0) 70 408 027
Mail:phil at highoctane.be | Web: http://philippeback.eu
Blog: http://philippeback.be | Twitter: @philippeback
Youtube: http://www.youtube.com/user/philippeback/videos

High Octane SPRL
rue cour Boisacq 101 | 1301 Bierges | Belgium

Pharo Consortium Member - http://consortium.pharo.org/
Featured on the Software Process and Measurement Cast -
http://spamcast.libsyn.com
Sparx Systems Enterprise Architect and Ability Engineering EADocX Value
Added Reseller
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pharo.org/pipermail/pharo-dev_lists.pharo.org/attachments/20131121/2dfbaeac/attachment-0002.html>


More information about the Pharo-dev mailing list