Hi,
So what is the story with Pharo 7 and Traits ? I may be wrong, but were they not removed but flattened ? How are external libraries that want to support multiple Pharo versions supposed to cope when they need to add extension methods to (meta) class ? I have a problem with STON. Sven |
Bump.
> On 5 Nov 2017, at 23:19, Sven Van Caekenberghe <[hidden email]> wrote: > > Hi, > > So what is the story with Pharo 7 and Traits ? > > I may be wrong, but were they not removed but flattened ? > > How are external libraries that want to support multiple Pharo versions supposed to cope when they need to add extension methods to (meta) class ? > > I have a problem with STON. > > Sven More specifically, I added extensions to TClass, TClassDescription and TApplyingOnClassSide because that is what code critics/unit tests forced me to do. At one point, maybe with work on Pharo kernel or bootstrap, all these extension where flattened in Pharo 7. So what should I do, going forward ? I guess the easiest for me would be not to use them, but then why do we have them ? Or should STON be considered special as to be useable in minimal situations ? Sven |
> On 14 Jun 2018, at 12:56, Sven Van Caekenberghe <[hidden email]> wrote: > > Bump. > >> On 5 Nov 2017, at 23:19, Sven Van Caekenberghe <[hidden email]> wrote: >> >> Hi, >> >> So what is the story with Pharo 7 and Traits ? >> >> I may be wrong, but were they not removed but flattened ? >> >> How are external libraries that want to support multiple Pharo versions supposed to cope when they need to add extension methods to (meta) class ? >> >> I have a problem with STON. >> >> Sven > > More specifically, I added extensions to TClass, TClassDescription and TApplyingOnClassSide because that is what code critics/unit tests forced me to do. > > At one point, maybe with work on Pharo kernel or bootstrap, all these extension where flattened in Pharo 7. > > So what should I do, going forward ? > > I guess the easiest for me would be not to use them, but then why do we have them ? Or should STON be considered special as to be useable in minimal situations ? > For Pharo7, Class/ClassDescription/Behavior is not composed of Traits anymore. The classes TClass, TClassDescription and TApplyingOnClassSide are just there so one can easily load code… they are not used. So for a project that wants to be loadable in Pharo6 and Pharo7, the easiest would be to make the extension methods be of Class/Behavior/Metaclass… it should work for most cases Marcus |
> On 14 Jun 2018, at 14:56, Marcus Denker <[hidden email]> wrote: > > > >> On 14 Jun 2018, at 12:56, Sven Van Caekenberghe <[hidden email]> wrote: >> >> Bump. >> >>> On 5 Nov 2017, at 23:19, Sven Van Caekenberghe <[hidden email]> wrote: >>> >>> Hi, >>> >>> So what is the story with Pharo 7 and Traits ? >>> >>> I may be wrong, but were they not removed but flattened ? >>> >>> How are external libraries that want to support multiple Pharo versions supposed to cope when they need to add extension methods to (meta) class ? >>> >>> I have a problem with STON. >>> >>> Sven >> >> More specifically, I added extensions to TClass, TClassDescription and TApplyingOnClassSide because that is what code critics/unit tests forced me to do. >> >> At one point, maybe with work on Pharo kernel or bootstrap, all these extension where flattened in Pharo 7. >> >> So what should I do, going forward ? >> >> I guess the easiest for me would be not to use them, but then why do we have them ? Or should STON be considered special as to be useable in minimal situations ? >> > Hello, > > For Pharo7, Class/ClassDescription/Behavior is not composed of Traits anymore. The classes TClass, TClassDescription and TApplyingOnClassSide are just there > so one can easily load code… they are not used. > > So for a project that wants to be loadable in Pharo6 and Pharo7, the easiest would be to make the extension methods be of Class/Behavior/Metaclass… it should work for most cases > > Marcus OK, thanks Marcus. I will do that. Sven |
Free forum by Nabble | Edit this page |