Hello,
If we look at methods, properties are not persistent in the code. Pragmas are
(which are
“special” kind of properties.
We should do the same for all the other properties: the lower property level is
not saved
in source, so we can store *anything* there.
But we can add a “higher level”. E.g. some form of class Pragmas.
And for packages, I would want to store what is now in the Manifest there and
make *that*
persistent (by storing it in the MCZ).
This would a) make the whole Manifest mode much nicer, b) allow for true
package comments
and c) we would have a real place for Package meta-data.
In general, we should move away from storing data just as arrays or strings in
methods.
Instead we should have a true model for the data and store that.
In the same direction, we should find a way to store data like icons and other
“files” nicely…
Marcus
> On 08 Dec 2015, at 19:26, Torsten Bergmann <[email protected]> wrote:
>
> In Pharo 5 the "properties" API is unified (means you can associate
> properties
> to classes, methods, packages, ...). Really cool and a good step toward a
> unified
> and more flexible system.
>
> Exampel:
>
> |pck|
> pck := #'Foo-Kernel' asPackage.
> pck propertyAt: #'lastModified' put: DateAndTime now asString.
> pck propertyAt: #'generatedUsing' put: 'Pharo DynaCase'.
> pck properties
>
> So far it looks like the package properties are still transient - that means
> when you save the package and load in another image they will be empty again.
> Havent tried for class properties, ...
>
> Will this change in the near future so they are persistent? I wonder what the
> plans an next steps are in this area.
>
> Thanks
> T.
>