I have a big proposal but I won’t have time to implement it :(.
As for fame it would be nice to change something. If the idea is gust about getting a
class we can call it getClass:. If it should really ensure, then if class metamodel is
missing it should be created. I can do that, the question is what is the grand vision.
In general I like to have the tools that think for me. And then to tweak them if needed.
For example to export something to MSE you can just export all instance variables buy
default and then someone could add meta descriptions to change the behaviour to suite his
needs. Same goes for Moose. The Finder could show all instance variables. And then if we
need to improve it, we could tweak it. As for me the entry level is too high. It would be
nice if we could tell people something like: you can browse whatever you want. Now when
you need to make it better you can use this, and that.
This is the thing I experienced with FAME. I followed Moose methods of MSE exporting. It
was really hart. You can get a class of each object. You can check all the methods of that
class for FAME annotations. So what is the reason of creating a separate meta tower and
specifying explicitly all the classes?
But as I’ve already told, I don’t have time to do something like this at the moment,
moreover I have no idea if anyone else likes this. But FAME method should be fixed :).
Cheers
Uko
On 11 Nov 2013, at 16:46, Tudor Girba <tudor(a)tudorgirba.com> wrote:
Hi Yuriy,
This kind of messages are not particularly useful for anything.
Let's try to transform it into something positive. Are you unhappy with the behavior
or with the name? Do you have an actual proposal for improvement?
Doru
On Mon, Nov 11, 2013 at 1:41 PM, Yuriy Tymchuk <yuriy.tymchuk(a)me.com> wrote:
Hi.
So if I’m not mistaken _ensure_ is meant to create referred data if it’s missing. But
when you look at:
ensureClass: var
var isBehavior
ifTrue: [ ^classDict at: var ].
var isSymbol
ifTrue: [
^classDict at: (self class environment at: var)
ifAbsent: [ metaDict at: var asString ]].
var isString
ifTrue: [ ^metaDict at: var ].
[ false ] assert.
it’s not ensuring anything. Isn’t there supposed to be something like:
metaDict at: var asString
ifAbsent: [ self processClass: var asClass ]
This really frustrates me about FAME. You cannot tell it "someObj asMSE”. You have
to write a tons of pragmas, then do some shenanigans with metamodels and only then you can
get serialisation working. Looks like stone age. Sorry for jumping on all the things like
that, it’s just that Moose - related things remind me of Java…
Uko
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
--
www.tudorgirba.com
"Every thing has its own flow"
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev