2017-03-21 7:41 GMT-03:00 Otto Behrens <o...@finworks.biz>: >> do you have any documentation that summarizes the changes you did. With all >> the new mails about magritte and problems it might be time to form a new >> group caring about a new implementation of a meta-object layer. I think now >> that we have slots the implementation can be made much more powerful than >> magritte is today. > > +1
>>> We ran into the instance side problem too, and solved that with >>> prototypes. You need them anyway to get better memento's. >>> >> Same here. There are times where it seems cumbersome to use the instance >> side descriptions. But the benefits outweigh that problem by far (for me at >> least). But I do like the idea that instance _and_ class side descriptions >> are taken into account. Feels right at first. > > We needed to retain the class side descriptions and hacked the new > magritte to still do the old class side thing using the > <magritteDescription> pragma. (ulgy) > > This is because we use MAReport with MADescribedColumn a lot. This > often have to be on the class side because the column applies to all > the rows in the report. How do you guys to table-like lists of things? > > We have an extension to use the descriptions to edit the cells in the > table as well, for the case where you need to edit various columns in > a list. The standard MAReport is read only, as I understand it. Do you > have the requirement to edit tables? And how do you do that? I don't use it in MAReports, but I define queries based on the descriptions for instances yet unknown, so the use case is similar. Currently what I did is an approach similar to how Dolphin Smalltalk handles its "Aspects", e.g. Model>>mementoClass ^self class mementoClassOfInstances Model class>>mementoClassOfInstances ^MACheckedMemento And this can be done for almost everything, incluiding building the description container, ask the instance first, and then the class. Also, I like the pragmas, but only for "tagging" the description methods, I prefer lookup and builds based on simple message sends. Regards, Esteban A. Maringolo