Hi,
Why the instance variable #belongsTo is initialized in
FAMIXAbstractLocalEntity>>initialize to a symbol value (belongsTo :=
#?)?
what that means?
why it is not initialized to a nil exactly like in any other subclass
of FAMIXAbstractStructuralEntity where this instance variable is not
initialized to any value?
Thanks,
Hani
Hi adrian
I read the fame polygot paper and you mention that it is GPL? Is it a
typo or really the case?
I really hope that else we cannot use it for moose and pharo and our
other projects.
Stef
Hi all
I reintroduced flatCollect: fixing also collectUnion:
I deprecated collectUnion: and replaced all the occurence of
collectUnion: in mooseDevelopment and friends
let me know if this is ok for you.
Stef
Hi all
I'm fixing the classVar/sharedVar import in SqMoose and after I will
do it in VW.
Now I have a question:
when we make the distinction between a class and its metaclass this
is easy.
when we merge a class and its metaclass:
a metaclass instVar will become a "class variable"
But we really need a way to make the distinction between a
sharedvariable and merged class inst var.
so I would like to have isShared in attribute or SmalltalkFamix
extension: how do I do that in
Famix20?
Famix30?
Then if I have the same variable name at the instance and class side
when I merge I have a conflict with name
and the importer will break.
So I could modify the importer to have another mapping and let in the
resulting model
two attributes with the same name but different scope
or I could modify the name of the mapped class inst var with
something like CL-x (would means I was a class var
but I was merged). Of course this solution is uglier but easier to
implement.
Stef
Dear List,
I was wondering why the following script does not have red and 5
pixels wide edges:
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
| domain |
domain := 1 to: 30.
view newShape
rectangle;
withBorder;
line;
lineWidth: 5;
lineColor: ColorValue red.
view nodes: domain.
view edgesFrom: [:v | v * v].
view circleLayout
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
I am probably doing something wrong, but haven't see what.
Cheers,
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Hi
I was thinking that a classVar should always belongs to its class
TheRoot class@TheSharedClassVar
belongsTo -> TheRoot and not the TheRoot class.
TheRoot@TheSharedClassVar
belongsTo TheRoot
I will implement it like that.
Tell mewhat you think else we could have a mess.
Stef
Hi all
In SqMoose we added the following
testMooseNameOfCompiledMethod
"self debug: #testMooseNameOfCompiledMethod"
self assert: (TheRoot class>>#accessInstanceVariable) mooseName =
#'Smalltalk::TheRoot_class.accessInstanceVariable()'.
self assert: (TheRoot>>#accessingClass) mooseName =
#'Smalltalk::TheRoot.accessingClass()'.
"May be we could fix that too. using another notation so that we
could use the notation create method
name too"
self should: [ (TheRoot>>#zork) mooseName ] raise: Error.
testMooseNameOfInstanceVariable
self assert: (TheRoot@#x) = #'Smalltalk::TheRoot.x'.
"contrary to compiled method notation we do not garanty that the
class has an iv"
"we could! Now do we want"
self assert: (TheRoot@#foo) = #'Smalltalk::TheRoot.foo'.
self assert: (TheRoot class@#mx) = #'Smalltalk::TheRoot_class.mx'
testMooseNameOfClassVariable
"self debug: #testMooseNameOfClassVariable"
self assert: (TheRoot@#TheSharedVariable) =
#'Smalltalk::TheRoot.TheSharedVariable'.
"contrary to compiled method notation we do not garanty that the
class has an iv"
"we could! Now do we want? We could also have @@ for class variables."
"now the name of shared variable is always its class and not its
metaclass"
self assert: (TheRoot class @#TheSharedVariable) =
#'Smalltalk::TheRoot.TheSharedVariable'.
Now for compiled methods we could have a different way of doing it to
be able to build any names.
stef
Hi
I was reading
MooseElement>>mooseID
"Returns an unique identifier of this entity. This method is
mandatory, and must
return an Integer that unqiuely identifies this entity within the
entire Moose environ-
ment. The return value must not be nil, and must never change."
nil = mooseID ifTrue: [mooseID := MooseModel freshID].
^mooseID
and I wonder why this is MooseModel freshID
since freshID is only implemented on
MooseElement class>>freshID
Stef
Hi
what is FMMultivalueLink?
parentClass: aType
parentClass := FMMultivalueLink on: self
update: #attributes
from: self parentClass
to: aType
parentClass set: aType
I'm probably too stupid to understand but let us try.
I do not understand why at the metamodel level I need to have in the
runtime
objects of the metametamodel.
Long long time ago I did a stupid code generator that took a stupid
MMModel
and generated plain code for the metamodel. Why this is not like that
with FAMIX30
in the latest version?
why do we trade space **and** speed for a meta stuff?
So do I have to code a code generator?
Or just replace all the FMMultivalueLink myself?
I'm confused I thought that the new FAME was better.
Stef