Moose 5.0 Roadmap

PharoConf | MooseDay | 2013 is now over. It was an exciting event. The mixture of roadmap talks, tutorials and demos kept us all engaged. I for one learnt quite a bit.

While PharoConf was focused on various Pharo technologies (from the low-level vectorial canvas to the neat Mongo support, and to the funky debugger infrastructure), MooseDay had a narrower focus. To set the context, the MooseDay kicked off with me laying out what Moose is, and where we want to get Moose in the following year. The roadmap talk is summarized below.

Over the past two years we have released four versions of Moose:

4.4 05.2011
  • RPackage
  • EyeSee
  • Metanool
  • Pharo 1.2
4.5 06.2011
  • minor changes
  • Pharo 1.3
4.6 02.2012
  • GTInspector
  • Scripting editors
  • SQL parser
  • FAMIX improvements
  • Pharo 1.3
4.7 03.2013
  • Chef
  • PetitParser Browser
  • Roassal
  • GTDebugger
  • Glamour improvements
  • Pharo 1.4

There are several things to notice. First, every major release of Moose came with significant new features. Second, the releases of Moose go almost hand in hand with the releases of Pharo. This is because the two projects both complement and overlap each other both in terms of functionality and in terms of the people involved.

In the near future we plan the following versions:

4.8 05.2013 minor changes, Pharo 2.0
5.0 beginning of 2014 ... , Pharo 3.0

The current plan for 5.0 go as follows:

Consolidating the visualization engines
Roassal will become the core visualization engine, and on top of it we will implement both Mondrian for easy graph visualizations (already supported to a large extent), and EyeSee for charts.
Roassal + vectorial support
A major improvement is expected in the rendering area. Roassal will move from a bitmap backend to a vector-based one. This will be achieved by adopting the Athens canvas.
PetitParser + Islands
PetitParser already offers an impressive infrastructure for building parsers. We want to add One direction of improvement comes from improving support for island parsing.
One infrastructure for hierarchical graphs
At the moment, we have three implementations that use the concept of hierarchical graphs (DSM, Carrack, and Quicksilver). We want to move towards one central support. Most likely this will come from the Quicksilver project.
Fame/FAMIX + Traits
An important feature of Moose comes from the ease of building new models. This is achieved through Fame meta-descriptions, and when it comes to software models, the FAMIX family of meta-models offers already a good start that can be reused in different contexts. However, until now, the reuse mainly depends on inheritance, and as a consequence, in less classic cases it is difficult to get a small meta-model that exactly fits the purpose without any superfluous details. To fix this, we will work on introducing a new mechanism of reuse based on Traits.
GToolkit + Glamour
Last but least, both Glamour and the Glamorous Toolkit will continue to evolve. In particular, the goal of the toolkit is to offer an extensible and assessment-enabled development environment for Pharo.
Stronger web presence
Moose' focus on making crafting analysis easy is rather unique among similar projects. The webpage will have to change to make this mission more explicit.

The slides I used for the presentation can be seen below.

Posted by Tudor Girba at 13 April 2013, 9:04 pm with tags moose, presentation link
|