Hello Moose !


With the current memory limit of Pharo, 

and the size of the generated moose models being potentially huge,

maybe some of you already though about (or even experimented) persistence solutions with query mechanisms that would instantiate famix objects only “on demand”,

in order to only have part of a model in memory when working on a specific area.

If so, I would be really interested to hear about (or play with) it :)


At first look, I  see that there is a MooseGroupStorage class.

This kind of object answers to some usual collection messages (add, remove, select, detect, .. ).

I guess that when we perform queries over a moose model, 

when we add or remove entity objects,

we end up using this protocol. 

So, if I wanted to implement a database persistence solution for moose,

my first feeling would be to implement a specific kind of “MooseGroupStorage”,

and to plug there a communication layer with a database.

Does it make sense ?


I have not played with moose since a long time

(but I am back to play with it a lot more :))

and my vision on things may be naive.

So do not hesitate to tell me if what I am saying sounds crazy,

and to push me back on the right path !

Does anyone already thought about solutions to deal with memory limits when generating big moose models ?


--
Cyrille Delaunay