
I loved functional programming back in my university days, which seems like so many eons ago. He argues that certain classes of problem are far simpler to solve using functional programming and shows a number of examples where F#'s syntax is far simpler, i.e., less verbose, than C#. Personally though, I'm not one who easily buys into the idea that syntactic conciseness in and of itself makes a language significantly better. Simplicity of the underlying semantic/mental model is ultimately what counts, and that of course needs to be balanced against expressiveness power, which generally is the counter point to simplicity. F# definitely looks powerful.
The break was an opportunity for many interesting discussions. One of the great things about conferences is the face to face discussions they facilitate. The summit is particularly conducive to that type of interation. Unfortunately that resulted in missing the start of the e4 talk. The diverse e4 team has made a lot of progress.

After another yummy lunch I was torn between Sven's Xtext talk and Tom's e4 model talk. Two cool things at once. Darn! I know more about Xtext than the e4 model, so I opted for the latter. It was interesting hearing all Tom's reasons for using EMF in e4.

He showed how a simple application model specifies the logical structure of the user interface, eliminating the need to build up these structures with a pile of boilerplate Java code. Then he showed how to extend that base scaffolding with embedded parts. He even showed an example where one process is editing an e4 model stored in a CDO repository while another process is rendering that same model from the shared repository in the actual UI; changes are immediately reflected across the process boundary effecitvely giving you a WYSIWYG editor. He also explained how you can define your own renderer to display the same model in various different ways. It's looking very good!
After that I attended Bernd Kolb and Christian Mohr's query talk.

Bernd explained some of the shortcomings of the existing EMF query technology; it's definitely pretty crude. SAP had some existing query infrastructure that was part of their proprietary MOF implementation; that's what's being contributed to Eclipse. They demonstrated examples of the cool SQL-like query language they support. The query execution engine makes use of the EMF index project, but can work against in memory resources as well as directly against a database too.
Frederic Jouault and Hugo Bruneliere's EMF Oslo talk was next.

They explained that M consistst of three complementary languages: MSchema, MGraph, and MGrammer, analogous to Ecore, EObject, and Xtext. Bridging these technologies involves mapping these specific concepts. To start one could define an Ecore model for MSchema so that it's possible to transform Ecore instances to MSchema instances which could then be serialized to conform of the MSchema textual syntax. They demonstrate their progress toward implementing this approach including ATL transformations for doing the mapping.
Henrik Lindberg and Thomas Hallgren's b3 talk followed a short break.

After that I had a chance to chat with a guy hoping to get involved in GEF, a project that certainly needs some fresh and lively committers. Maybe I'll be able to help. This was followed by the Buckminster talk from Henrik, Thomas, and Filip Hrbek.

It attracted a very large audience.



The tools, e.g., the dependency visualizer, are looking very slick. They also demonstrated the repository aggregator, which is based on an EMF model and an EMF generated editor. It can even produce a Maven repository as well as a p2 repository. How cool is that? At the end they explained how the lessons learned from building Buckminster will be used to drive further improvements into the b3 project. Models, models, everywhere.
This was followed by the reception. It included a talk by Microsoft that felt a little too much like advertisement to me. Oh well, they paid for the the food and the spirits---the salmon was excellent and so was the wine---so it was a reasonable trade-off. I finished the day at a birds of a feather session discussing how to transform the modeling project into something suited for supporting a DSL workbench as well as how interested consumers could help fund that effort. It was a very interesting day indeed!
1 comment:
Hi nice reeading your post
Post a Comment