Hi!
I am now digging into Pillar. My goal is to be able to insert Roassal script and having it executed.
Scripts provided within [[[ ]]] may be evaluated using the variable ‘eval=true’. Here is an example:
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
PRHTMLWriter defaultConfigurations anyOne
inputString: '100 factorial =
[[[eval=true
stream nextPutAll: 100 factorial asString
]]]';
outputFile: 'myFirstPillarExport.html' asFileReference;
export
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
‘stream’ is a hardcoded variable name which represents the stream on which you have to write your result. What you write in stream is pillar-friendly. This means you can write something like:
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
PRHTMLWriter defaultConfigurations anyOne
inputString: '100 factorial =
[[[eval=true
stream nextPutAll: ''""'', 100 factorial asString, ''""''
]]]';
outputFile: 'myFirstPillarExport.html' asFileReference;
export
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
I have tried to insert some Roassal visualization, and it works pretty well.
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
PRHTMLWriter defaultConfigurations anyOne
inputString: '
!!Example of a factorial
50 factorial =
[[[eval=true
stream nextPutAll: ''""'', 100 factorial asString, ''""''.
]]]
!!Some Roassal visualizations
Here is a small Mondrian example
[[[eval=true
b := RTMondrian new.
b nodes: (1 to: 100).
b layout grid.
b build.
aView := b view.
RTHTML5Exporter new insert: aView named: ''Roassal test'' inPillarStream: stream
]]]
Another example with Grapher this time:
[[[eval=true
b := RTGrapher new.
b extent: 300 @ 200.
ds := RTStackedDataSet new.
ds interaction popupText.
ds barShape width: 10.
ds points: #(4 5 1 -2 5 6).
b add: ds.
"b axisX noLabel; noTick.
"
b build.
RTHTML5Exporter new insert: b view named: ''A Graph'' inPillarStream: stream
]]]
';
outputFile: 'myFirstPillarExport.html' asFileReference;
export
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Pillar is very well done! Congrats to the authors!
Cheers,
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
DiffMorph has a concept of contextClass that it uses to highlight method sources that are diffed. I’ve added a support of this feature to the glamour presentation and renderer.
Please let me know if it is ok and if I can contribute like this or there is a more formal process.
Uko
I’ve removed explicit white color form the renderer, as on the dark theme it wasn’t working well. Let me know if this is fine, because I thought that maybe a color from theme should be specified, but I didn’t find any colors in other renderers.
Uko
Hi,
Since the work on the integration of PPContext in PetitParser, there is
significant performance degradation. I have already mentioned that on
simple grammar the factor is about 2. But on complex grammar (for example,
our proprietary parser for 4D language ), we have seen that degradation is
goes well beyond this factor. So, for example, for 800K lines that we parse
in under 10 minutes without PPContext work, with the latest version it goes
beyond 2h.
I have not been able to reproduce my case on simple grammars. May be we can
have some benchmarks using open source parsers and large code bases (e.g.
PP Java Parser on JHotDraw or ArgoUML).
Currently, I circumvent this issue by using PP v1.51 but I can provide
relevant feedback and run benches on any improvements.
regards.
Usman
Hi,
I tried to download and use Moose 5.0 on a 10.6 OS X machine but hit some
issues on the way.
So far I did not try anything related to Moose 5.1.
My first attempt was to download from here:
http://moosetechnology.org/#install
However, all Moose links point to non existent files redirecting me to a
'Not Found' HTML page.
Then I followed the link to the Pharo VM download (http://pharo.org/download),
downloaded
the OS X package by clicking on the OS X 'button', and executed the Gofer
statement from the website.
Everything downloaded and installed fine.
But when I tried to run any of the Roassal demos a debugger window opened
complaining about some cairo method which could not be found.
I know that there is ongoing work in the Pharo VM towards a Cairo based
backend,
but unfortunately the Pharo VM I downloaded does not include it.
It would be nice if you could provide me with any hints on how to get a
working Moose/Roassal image.
Also let me know if there is a another/better list where I should ask such
questions.
Many thanks,
Manfred
How would be ported this code using RTCharterBuilder
| b |
b := RTCharterBuilder new.
b extent: 500 @ 200.
b points: keys.
b stackX.
b allY: [ : each | aBag occurrencesOf: each ].
b histogramWithBarTitle: #yourself.
b axisY.
b newAxisConfiguration plain.
b axisXTitled: 'MyTitle'.
b axisX.
b build.
^ b
using RTGrapher?
Because some methods are missing (#points: #stackX, etc) in the latest
version of Roassal2.
Hernán
Hi,
Now in the moose build there are a lot of undeclared warnings:
https://ci.inria.fr/moose/job/moose-5.1/117/console
I will start fixing them once jenkins starts working again. Most of them
come because of the order in which packages are loaded (a test package is
loaded before the code that it tests).
Cheers,
Andrei
This looks great!
What do you use to handle the interaction?
Doru
On Wed, Feb 18, 2015 at 9:41 PM, Pierre CHANSON <chans.pierre(a)gmail.com>
wrote:
> Hi all,
>
> here is a short video to present how to integrate Roassal graphics in your
> Seaside application !
>
> https://vimeo.com/119983485
>
> http://smalltalkhub.com/#!/~PierreChanson/RoassalSeaside
> cheers,
>
> Pierre
>
--
www.tudorgirba.com
"Every thing has its own flow"
Hello,
I have been using Moose for some graph analysis and I noticed that Tarjan was a little slow. Analyzing further, I noticed that even though the complexity of Tarjan is linear, building the graph is O(n*m) where n is the number of nodes, and m is the number of edges of the graph.
This happen because Moose creates its own graph nodes using as a model my nodes, and then for building each edge of the graph it looks for the corresponding node using detect: [ :n | n model = aModel ] over the OrderedCollection of nodes.
I fixed it by replacing the nodes OrderedCollection for a Dictionary and replacing the MalTarjan>>findNode:ifAbsent: implemented with a detect:ifAbsent: by a Dictionary lookup. In my benchmark of 2 seconds before the fix, now takes 38ms, and my other experiment that I got bored of waiting after 10 hours now it takes less than 1 hour and a half.
I already committed it, the tests look fine but let me know if something goes bad.
Cheers,
Alejandro