> How does this affect serialization / materialization engines like Fuel?

Not now
We will have to work to make the compiler smarter and define special Slot class.


>> On 21 nov. 2013, at 13:44, kilon alios <[email protected]> wrote:
>> 
>> 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 <[email protected]> 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 <[email protected]>
>>> wrote:
>>>> 
>>>> wow, impressive!
>>>> 
>>>> 
>>>> On Thu, Nov 21, 2013 at 9:02 AM, Marcus Denker <[email protected]>
>>>> 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"
>> 
>> 
>> 
> 


Reply via email to