Hi list
I am looking for any media material (picture, screenshots of tools,
slideshow, videos, podcasts) related to Moose. Some could be put on
the website for the community, and I think they should be put in a
file repository to be shared under a CC licence.
Right now I am working on a poster for Moose and that's why I need
such materials.
--
Simon
Dear list,
After a fruitful meeting with Doru at Bern, here is the current list
of issue to be resolved in the reference implementation of Famix3
(SqMoose), just so you know. Feel free to ask
38
Assigned
[FAME] Handling of unknown attributes when importing MSE files
(mismatched models)
39
Started
Implement a Visitor for Famix3
40
Closed
FAMIX3: review method organization to clean Famix-Core
41
New
[MOOSE] port SCG algorithms to SqMoose
42
New
[FAME] Add annotation/comment support in Fame metametamodel
43
New
[FAME] add helper methods for multivalued attributes
44
New
[FAMIX] Compability visitor for Famix2/famix3
45
Assigned
[FAMIX3] NamedEntity#packagedIn should be derived and renamed to
parentPackage
46
Assigned
[FAMIX3] SmalltalkImporter: Classes/Types should be registered in
ContainerEntity#types and not in Package#childNamedEntities
47
Assigned
Smalltalk importer: check class registration
48
Assigned
Smalltalk importer: fix stub
49
Assigned
[FAMIX3] Smalltalk Importer: implement candidate invocations
50
Assigned
[FAMIX3] Check attribute declarations are correct and synchronized
51
Assigned
[FAMIX3] Remove generic setters from the model (from: to: belongsTo:)
52
Assigned
Check current usage of NamedEntity#modifiers attribute
53
Assigned
[FAMIX3] round-trip extraction/generation test with Fame
--
Simon
With such a name, I couldn't resist to try.
I downloaded Glamour and all the test pass (except one expected
failure).
What next? How I can open one? I skimmed the test, but I do not know
where to start.
Cheers,
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
> I've loaded the mondrian form squeaksource and I'm trying it. I find
> it quite different for the one used in OB.
Yes, but very close to the VW version. We have a number of scripts and
visualization made in VW that we would like to reuse. Moreover, in my
opinion, the new version is simpler to use (and probably faster to
render).
The incantation to install the latest version of Mondrian in Pharo:
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
ScriptLoader new installer ss project: 'Mondrian'; install:
'MondrianLoader'. ScriptLoader perform: #loadMondrian
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> I'll continue to try it as I'm reading Micheal Master thesis. I'm
> trying on a simple graph first with tasks and node, but also I'd like
> a special kinf of shape. Alex, I didn't found the way to compose
> shape. Is it possible already ?
Yes, you can compose them using MOFormsBuilder. There are numerous
example in MOReadme, MONewFormsBuilderTest, and MOFormsBuilderTest
(but some of them go red).
An example that you can run with: MOReadme new flagExample
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
| builder view |
builder := MOFormsBuilder new.
"Assuming you want a grid made up of 3 columns and 2 rows"
builder
column; fill;
column; fill; center;
column; fill.
builder
row; fill; row; fill; row; fill; "For the German flag"
row; center; "The EU text"
row; pref. "For the French flag"
"We draw a German flag"
builder x: 1 y: 1 w: 3 add: (MORectangleShape new width: 30; height:
7; fillColor: Color black).
builder x: 1 y: 2 w: 3 add: (MORectangleShape new width: 30; height:
7; fillColor: Color red).
builder x: 1 y: 3 w: 3 add: (MORectangleShape new width: 30; height:
7; fillColor: Color yellow).
builder x: 1 y: 4 w: 3 add: (MOLabelShape new text: [:aNumber |'EU ',
aNumber printString]).
"We draw a French flag"
builder x: 1 y: 5 add: (MORectangleShape new width: 10; height: 20;
fillColor: Color blue).
builder x: 2 y: 5 add: (MORectangleShape new width: 10; height: 20;
fillColor: Color white).
builder x: 3 y: 5 add: (MORectangleShape new width: 10; height: 20;
fillColor: Color red).
view := MOViewRenderer new.
view popupText: [:aNumber | 'my value is ', aNumber printString ].
view draggable. "Let's make nodes draggable, yeah!"
view nodeShape: (builder shape).
view nodes: (1 to: 27).
view edges: (1 to: 27) from: #yourself to: [:each | each * each].
view layout: (MOCircleLayout new).
view open
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> I also wonder if we could imagine a SVGRenderer to use in conjunction
> with seaside :) ? What do you think ?
Yeah, that would be nice!
> ps: David, concerning the graph button bar in OB, I'll suggest showing
> it only in the comment view.
It depends... I seldom press the comment button, except if there is a
comment in it, which is rare.
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Hi all,
In FAMIXScopingEntity, the method initialize is:
---
initialize
super initialize.
childNamespaces := FMMultivalueLink on: self opposite:
#parentNamespace:.
parentNamespace := nil.
globalVariables := FMMultivalueLink on: self opposite:
#parentNamespace:.
---
The class FMMultivalueLink does not exist.
Does anyone know what it is and how to fix it?
Thanks
Jannik
Hi everybody
I'm trying to use iPlasma to parse Java source files, export the model
as MSE, then import them in SqMoose using Fame.
I ran into a couple of problems when doing this, specificall the MSE
format built with iPlasma is not well parsed by Fame.
Here is a sample generated by iPlasma:
Beginning of MSE file:
(Moose.Model (entity
A) According to the MSE spec, the file cant begin directly with a name
like that, should be ((Moose.Model (entity (....))
Besides, I dont see the point of this header, it works fine without it.
(FAMIX.Namespace
(id: 6)
(name 'java::lang')
)
B) Fame infers accessor 'smalltalk-style', ie it will call #name: to
set the name of the Namespace entity in the example above.
It works in Famix3 but not in Famix2, where the setter is declared as
#setName: . It's alright with the inference rule of Meta (as I far as
I remember) but not with the new one. We should add those accessors
in Famix2 for seamless access.
(FAMIX.Class
(id: 3)
(name 'Object')
(belongsTo (idref: 6))
(isAbstract false)
(isInterface false)
C) Fame does not recognize the idref: syntax, only the ref: syntax.
The MSE spec is inconsistent about that: the grammar only defines the
ref: syntax as Fame does, but the doc talks about both an IDREF
command and a 'REF command for metamodels only'.
D) Finally, the biggest hurdle is that we dont know directly with
which version of Famix the file was created. For example, the FAMIX
package in SqMoose matches Famix3, and Famix2 is defined in a FAMIX2
package. This leads to a mismatch when trying to load the above file
which was generated with Famix2 (unless batch editing all FAMIX ->
FAMIX2)
My suggestion is that each Famix metamodel should explicitely declare
its version in its Fame package name, either Famix2 or Famix3, like
that:
FAMIXClass class>>annotation
<MSEClass: #Class super: 'FAMIX3.Type'>
<package: #FAMIX3>
^self
Does it sound ok?
--
Simon
Time millisecondsToRun: [| view |
view := MOViewRenderer new.
view nodes: (1 to: 50) forEach: [:each |
view nodes: (1 to: 10) forEach: [:ea |
view nodes: (1 to: ea * each).
view gridLayout].
view gridLayout].
view open]
=> 18955 in Pharo
=> 23566 in VW
:-)
And I am sure there are rooms for improvement (IdentityDictionary are
used with a small number of elements, a lot of OrderedCollection are
used, ...)
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Hi Mondrian friends,
While doing a drag and drop, I am reordering the nodes in a MORoot:
the dragged node is put at the end of the "root nodes" to make it the
last to dislpay it on the screen. I am just wondering whether this
will not interfere with other behavior.
Cheers,
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Dear SqMoose Crew,
I have a question about properties.
In FileImportTest>>testFiles, there are accesses to properties, e.g.,
self assert: (file propertyNamed: #TLOT) = 1.
self assert: (file propertyNamed: #NOCh) = 0.
(file propertyNamed: #TLOT) returns nil. It seems that the computing
is not done. However, if I manually trigger the computation, getting
the property returns the expected value as in:
self assert: (file totalNumberOfLinesOfText = 1). "If I remove this
line, the next one return nil"
self assert: (file propertyNamed: #TLOT) = 1
Any idea ? It seems that the meta stuff is not able to retrieve the
method that contains the property. Any idea why?
Cheers,
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.