Hello All,
There are 5 slots left for Camp Smalltalk Charlotte 2019 taking place at
the end of this month.
Now is the time to sign up if you are thinking of attending (see bottom for
registration link).
Camp Smalltalk is about community engagement and collaboration.
There are a number of fantastic talks already lined up such as:
Developing Smalltalk solutions running directly on ios / android mobile
platforms (along with tooling)
Live demo of @1MB remote-debuggable smalltalk images controlling
peripherals attached to a Raspberry PI (ARM)
In-depth look at large scale use of CMake/CTest/CDash for use with
Smalltalk systems
Smalltalk dialect portability solutions for the Smalltalk community (for
use with GIT)
We also have a fantastic Saturday evening social dinner planned on the
boardwalk near the hotel.
*As a special gift to attendees*, Instantiations will be providing everyone
with their own Raspberry PI Zero Wifi devices
with 8GB mini-sd card and power supply. Raspbian Linux with VA Smalltalk
for ARM will be pre-installed.
And if that isn't enough, each attendee will be receiving an open-source
license for VA Smalltalk.
This event is happening *March 29th – March 31st 2019* in Charlotte, North
Carolina.
Event details and registration info are available at the following link: Camp
Smalltalk Charlotte 2019
<https://www.eventbrite.com/e/camp-smalltalk-charlotte-2019-tickets-52380940…>
Hope to see you there!
[image: IMG_0912.jpg]
--
Mariano
https://twitter.com/MartinezPeckhttp://marianopeck.wordpress.com
Dear list,
I am checking what Roassal can do and was wondering if I
could use it for quick data analysis, e.g.,
to draw a simple xy-data graph from a file and play around
interactively with that, with the possibility to zoom / zoom back,
switch easily to logarithmic axes, etc.
So far I see RTGrapher, but as far as I can tell, no usable zooming
functionality exists. Is there anything better?
Thanks for any comments
Ruda
Hi,
Andrei wrote a post describing GT Releaser:
https://medium.com/feenk/continuous-delivery-with-gt-releaser-4fc6c30e1f33
We use it for releasing reliably GT. GT is spread throughout multiple repositories and have deep dependencies, and yet we release it on every commit in a reliable fashion, while still allowing people to load small pieces independently from the overall GT. For example, people can load GT Examples, or GT Releaser independently. Another thing is that we also handle the dependencies to external projects, such as SmaCC.
The same can be applied for Moose. Would you like to look into this opportunities to make Moose more modular and friendlier to outside projects?
Cheers,
Doru
--
www.feenk.com
"No matter how many recipes we know, we still value a chef."
I am able to do that:
Changing node selected on the left updates the selection interval on the right.
Highlighter is generated automatically from my PPCompositeParser.
One step further to get good integration of PostgreSQL source code into Pharo environment.
Next step is to have a code editor for PostgreSQL source code (really close to have it).
Julien
---
Julien Delplanque
Doctorant à l’Université de Lille
http://juliendelplanque.be/phd.html <http://juliendelplanque.be/phd.html>
Equipe Rmod, Inria
Bâtiment B 40, Avenue Halley 59650 Villeneuve d'Ascq
Numéro de téléphone: +333 59 35 86 40
Hello doru
I do not know if you know but the moose web site is down.
Stef
--------------------------------------------
Stéphane Ducasse
http://stephane.ducasse.free.frhttp://www.synectique.eu / http://www.pharo.org
03 59 35 87 52
Assistant: Julie Jonas
FAX 03 59 57 78 50
TEL 03 59 35 86 16
S. Ducasse - Inria
40, avenue Halley,
Parc Scientifique de la Haute Borne, Bât.A, Park Plaza
Villeneuve d'Ascq 59650
France
Hello Smalltalkers,
Camp Smalltalk Charlotte 2019 is looking good! At this point we are over
half full.
Looks like some cool demos using different Smalltalk dialects are already
lining up.
A google groups forum has been created for attendees so everyone can
collaborate
beforehand. Attendees will get an invitation for group access shortly
after registering.
This event is happening March 29th – March 31st 2019 in Charlotte, North
Carolina.
Please register for the event as spots will be limited.
Event details and registration info are available at the following link: Camp
Smalltalk Charlotte 2019
<https://www.google.com/url?q=https%3A%2F%2Fwww.eventbrite.com%2Fe%2Fcamp-sm…>
Hope to see you there!
--
Mariano
https://twitter.com/MartinezPeckhttp://marianopeck.wordpress.com
Hi,
is it possible to interchange custom properties via MSE?
e.g.
I have added myProp to the method:
~~~~
(
(FAMIX.Class
(id: 1)
(name 'MyClass'))
(FAMIX.Method
(id: 2)
(name 'myMethod')
(myProp 'someValue')
(parentType (ref: 1))))
~~~
This is imported fine
~~~
s := Clipboard clipboardText asString.
model := MooseModel importFromMSEStream: s readStream.
model allMethods first propertyNamed: 'myProp'. "'someValue'"
~~~
However
1) I cannot see it in the Properties tab of the Moose Inspector,
2) when I export it, it is lost
(instead some other properties are exported that I didn't ask for)
~~~
model asMSEString. "'(
(FAMIX.Class (id: 1)
(name ''MyClass''))
(FAMIX.Method (id: 2)
(name ''myMethod'')
(cyclomaticComplexity -1)
(numberOfConditionals -1)
(numberOfLinesOfCode -1)
(numberOfStatements -1)
(parentType (ref: 1))
(timeStamp '''')))'"
~~~
The same thing applies when I add custom Metanool annotation in the Meta
edit tab... e.g. I add `an AnonymousClass[String]` with name `anotherProp`
and some value, I can actually see it in the `Properties` tab (unlike the
one imported),
but when exported, it is also missing.
Do I need to do some extra steps in order to interchange this information?
Thanks,
Peter
Hello,How can I extend Moose metamodel to add new metrics at methods, classes and packages levels and how to compute its then show it in the navigation.thank you
------------------------------------
Hayatou Oumarou, PhD Software EngineeringUniversity of Maroua, Cameroon
(+237)699470504
Happy New Year to All!
For those that haven't heard, Instantiations is sponsoring a Camp Smalltalk
on March 29th – March 31st 2019 in Charlotte, North Carolina.
Please register for the event soon as spots will be limited.
Event details and registration info are available at the following link: Camp
Smalltalk Charlotte 2019
<https://www.eventbrite.com/e/camp-smalltalk-charlotte-2019-tickets-52380940…>
Thanks to Instantiations, I will be flying down there too, so I hope I can
at least see some of you :)
--
Mariano
https://twitter.com/MartinezPeckhttp://marianopeck.wordpress.com
Hi guys,
Using Pharo 6.1/Win here.
Is there any way to adjust a RTView canvas to a fixed size, say 620 x
744 px, before the elements gets added into the view?
This is what I've tried so far:
1) Empty canvas manually set to 620 x 744 px produces 1x1 image:
| view |
view := RTView new
setCanvas: (TRCanvas new extent: 620 @ 744; yourself);
yourself.
(RTCanvasExporter canvas: view canvas)
format: #png;
fileName: 'test_empty.png';
export.
2) Non-empty canvas manually set to 620 x 744 px produces 25x15 image:
| view elems |
view := RTView new
setCanvas: (TRCanvas new extent: 620 @ 744; yourself);
yourself.
elems := (RTBox new color: Color blue) elementsOn: (1 to: 5).
view addAll: elems.
RTGridLayout on: view elements.
(RTCanvasExporter canvas: view canvas)
format: #png;
fileName: 'test_5elems.png';
export.
3) Idem 2) adding #scale: 10 -> 250x150px ... #scale: 24.8 -> 620 px
| view elems |
view := RTView new
setCanvas: (TRCanvas new extent: 620 @ 744; yourself);
yourself.
elems := (RTBox new color: Color blue) elementsOn: (1 to: 5).
view addAll: elems.
RTGridLayout on: view elements.
(RTCanvasExporter canvas: view canvas)
format: #png;
scale: 12.4;
fileName: 'test_5elems_scaled.png';
export.
4) Adding #oversizedBy: to 3) finally makes the trick:
| view elems |
view := RTView new
setCanvas: (TRCanvas new extent: 620 @ 744; yourself);
yourself.
elems := (RTBox new color: Color blue) elementsOn: (1 to: 5).
view addAll: elems.
RTGridLayout on: view elements.
(RTCanvasExporter canvas: view canvas)
format: #png;
scale: 24.8;
oversizedBy: 0 @ 15;
fileName: 'test_5elems_scale2_osized.png';
export.
- So setting manually canvas extent doesn't have any effect?
- Any way also to set a fixed margin or padding size (distance between
image element and border)?
Cheers,
Hernán
Hello Fellow Pharoers and Smalltalk lovers
I'm happy to announce a new little book to improve the culture around Pharo.
I will revise it in the future so you can feel free to send feedback and pull requests
to https://github.com/SquareBracketAssociates/Booklet-PharoWithStyle
Stef
"The best way to predict the future is to invent" so I do it. :)
--------------------------------------------
Stéphane Ducasse
http://stephane.ducasse.free.frhttp://www.synectique.eu / http://www.pharo.org
03 59 35 87 52
Assistant: Julie Jonas
FAX 03 59 57 78 50
TEL 03 59 35 86 16
S. Ducasse - Inria
40, avenue Halley,
Parc Scientifique de la Haute Borne, Bât.A, Park Plaza
Villeneuve d'Ascq 59650
France
Hi doru
Would it be possible to have a separate mailing-list for GT?
Stef
--------------------------------------------
Stéphane Ducasse
http://stephane.ducasse.free.frhttp://www.synectique.eu / http://www.pharo.org
03 59 35 87 52
Assistant: Julie Jonas
FAX 03 59 57 78 50
TEL 03 59 35 86 16
S. Ducasse - Inria
40, avenue Halley,
Parc Scientifique de la Haute Borne, Bât.A, Park Plaza
Villeneuve d'Ascq 59650
France
Hello,
This email to announce that a new minor release of PetitParser (1) has been published on GitHub (v2.1.0).
Here is the change log:
Summary
-----------
- Each package has its tests separated in a separated package.
- Cleaned baseline, made it more modular.
- Created more groups to let people load the part of the project they want.
- Some cleaning in `PetitParser` package.
- Integrated PetitPreprocessor and PetitParserExtensions in the project as separated groups
Changelog
-----------
#31 Extract PPTextHighlighter into a separated package.
#21 Add contribution guidelines
#13 Update README with new groups
#9 Fix CI configuration
#19 A TODO comment in PPMemoizedParser>>#parseOn: might need to be fixed cleaning
#11 Inconsistent method classification
#15 Split tests in their own packages cleaning
#22 PetitPreprocessor is missing some extensions
#3 Use `>>>` notation for examples inside method
#8 PPStream>>#column: has commented code that should be removed
#7 PPCharSetPredicate and PPContextMemento need to be commented
#1 Replace 'Oops' error message with a meaningful message
#4 PPContext>>#on:stream: should be removed
#2 Integrate PetitParserExtensions package from Smalltalkhub
#5 Integrate PetitPreprocessor package from Smalltalkhub
Thanks to Cyril Ferlicot for his help.
Cheers,
Julien
---
Julien Delplanque
Doctorant à l’Université de Lille
http://juliendelplanque.be/phd.html
Equipe Rmod, Inria
Bâtiment B 40, Avenue Halley 59650 Villeneuve d'Ascq
Numéro de téléphone: +333 59 35 86 40
Through a jdt2famix parsed model of an application I'm trying to follow the
usage of a (FAMIX)Parameter. How can this be done?
>From a method parameter I can access its enclosing method and from there on
find invocations within that method for example. The problem is that there
does not seem to be a direct way to retrieve the fact that a parameter is
part of a method invocation (both direct or as part of an expression). It
seems I have to parse a piece of the source code (the invocation signature
to be precise). This does not feel okay. Can anyone give some pointers on
how to find parameter usage without resorting to parsing the source code (if
such a solution exists)?
(Googling didn't help so far, or I'm not using the right search parameters
;-)
Example Java source code, for which I want to follow the 'x' parameter:
void startPoint(String x, int y) {
// Here is first 'simple' parameter usage
this.doSomething(x, y);
// Here parameter is part of an expression
this.that.doAnother("[" + x + "]");
// Parameter is part of expression again (twice)
this.doLast(x.substring(0, y) + x.substring(y + 8));
}
Cheers,
Erik
--
Sent from: http://forum.world.st/Moose-f1310756.html
We should pay attention to super vicious dependencies.
For example ConfigurationOfPhexample dependent on a new version of StateSpecs.
baseline21: spec
<version: '2.1-baseline'>
spec for: #'common' do: [
spec blessing: #'baseline'.
spec repository: 'http://www.smalltalkhub.com/mc/Phexample/Phexample/main'.
spec baseline: 'StateSpecs' with: [
spec repository: 'github://dionisiydk/StateSpecs:v2.4.x’].
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
spec package: 'Phexample' ].
Since this baseline is referring to github, it means that old users of Phexample
cannot load anymore their code. This is funny because they cannot load their code to
be able to fix it to load in recent pharo version.
So Alain cannot migrate his project because petitparser use Phexample.
Stef
--------------------------------------------
Stéphane Ducasse
http://stephane.ducasse.free.frhttp://www.synectique.eu / http://www.pharo.org
03 59 35 87 52
Assistant: Julie Jonas
FAX 03 59 57 78 50
TEL 03 59 35 86 16
S. Ducasse - Inria
40, avenue Halley,
Parc Scientifique de la Haute Borne, Bât.A, Park Plaza
Villeneuve d'Ascq 59650
France
Hello,
I’d like to migrate PetitParser (1) on GitHub under moosetechnology organisation.
I have a project depending on it and there are some stuff I’d like to fix on PetitParser 1 ConfigurationOf (which will become a baseline on GitHub).
Is it ok to migrate it?
Cheers,
Julien
---
Julien Delplanque
Doctorant à l’Université de Lille
http://juliendelplanque.be/phd.html
Equipe Rmod, Inria
Bâtiment B 40, Avenue Halley 59650 Villeneuve d'Ascq
Numéro de téléphone: +333 59 35 86 40
Greetings Fellow Smalltalkers,
We would like to invite you to Camp Smalltalk, March 29th – March 31st
2019 in Charlotte, North Carolina. Event details and registration
info are available at the following link: Camp Smalltalk Charlotte 2019
<https://www.eventbrite.com/e/camp-smalltalk-charlotte-2019-tickets-52380940…>
Hope to see you there!
--
Mariano
A question on normalizing edges in RTMondrian:
I want to show the "strength" of the edges, computed according to some
metric.
How can I normalize for example the color of the edge to reflect this
"strength" ?
Or maybe, normalize the "boldness" of the edge ?
nicolas
--
Nicolas Anquetil
RMod team -- Inria Lille
Hi,
Glamorous Toolkit has evolved quite a bit over the past months, and we now would like to announce that we reached alpha.2 version. It runs on top of Pharo 7:
feenk.com/gt
There quite a number of new things. Some highlights are:
- We added extensive documentation for GT, Bloc and Brick. By running "GtWorld openTour” you essentially transform the image into an elaborate wiki.
- We worked on Coder, a new set of tools that are dedicated for affecting code. For example, in the picture below we see an editor on embedded examples that can be edited and run independently.
And this one shows how we can visualize and edit the result of querying.
Just a note: To make Coder work the way we want, we extended Brick with several widgets, and enhanced significantly the linear and grid layouts.
- We added the first version of xdoc in order to serialize the Playground every time you evaluate something.
As always, we are looking forward to your feedback.
Have fun,
The feenk team
--
www.feenk.com
--
www.feenk.com
"Every thing should have the right to be different."
Several strange behavior in Roassal on a fresh moose 7.1 image (the
behavior with moose 6.1).
The following script tries to show classes within their packages, with
color according to their numberOfLinesOfCode:
|model v|
model := MooseModel root allModels last.
v := RTMondrian new.
v shape rectangle.
v nodes: (model allModelNamespaces)
forEach: [ :p |
v shape rectangle.
v nodes: p types.
v normalizer
normalizeColor: #numberOfLinesOfCode
using: {Color white . Color black}
min: 0
max: 1000.
v layout grid.
].
v layout grid.
v
The result is that package color changes, not class color:
Now let's add the name of the packages (same script but for the 4th line):
|model v|
model := MooseModel root allModels last.
v := RTMondrian new.
v shape rectangle withTextAbove: #mooseName.
v nodes: (model allModelNamespaces)
forEach: [ :p |
v shape rectangle.
v nodes: p types.
v normalizer
normalizeColor: #numberOfLinesOfCode
using: {Color white . Color black}
min: 0
max: 1000.
v layout grid.
].
v layout grid.
v
The result is that packages are not colored anymore but package names are :
So the question is:
What's wrong ?
How to have package with text above in black and color of inner class
depending on their numberOfLinesOfCode ?
thanks
nicolas
--
Nicolas Anquetil
RMod team -- Inria Lille
Hi,
The current Moose build from https://ci.inria.fr/moose/job/moose-6.1 no
longer works and there is the following error when creating a Famix model:
- "AssertionFailure: Link to opposite links should be a bijective
operation... Please check your model!"
This is caused by `FAMIX.BehaviouralReference.pointed` and
`FAMIX.BehaviouralReference.referer` that point to attributes
in FAMIXBehaviouralEntity that are not there.
They were added by Famix-CPlusPlus that is now loaded
by ConfigurationOfFamix.
Are there some commits missing that add the missing functionality to
FAMIXBehaviouralEntity?
Or should we remove for now `Famix-CPlusPlus` from ConfigurationOfFamix?
Cheers,
Andrei