Eclipse DemoCamps November 2008/Hamburg/Session Abstracts
Rethinking the Architecture of Java ORM in terms of LINQ
The general theme revolves around the efficient evaluation of LINQ queries in a Java-based implementation. Regarding the outline below, the first two items have already been reported in , the remaining ones are new.
- LINQ set of technologies distilled. Architectural differences between JPA ORM and ADO.NET Entity Framework. Benchmarks for queries on large ORMed Ecore models
- LINQ-favored approach to runtime translation into the query language of the target persistent store
- Products and prototypes in the Java space aiming at LINQ functionality. We showcase the approach adopted by JaQue, which aims to adopt bytecode inspection to translate LINQ statements into the persistent store's native query language
- The venue we plan to follow for future work, building upon technologies developed in the projects Pathfinder and Ferry, both being developed at U Tübingen.
 Garcia M., Prithiviraj R. Rethinking the Architecture of O/R Mapping for EMF in terms of LINQ
While digital map data seem to be ubiquitous in the age of Google Maps and similar services, car navigation systems have special requirements for a navigation database regarding compactness and fast access.
For this reason, the compilation of a binary map database for a car navigation system from raw geodata is a complex process which may run for days or weeks on a grid of worker machines.
At Harman/Becker, we are developing a next generation map compiler codenamed Anaconda which supports new input and output formats and which is built on top of OSGi and numerous Open Source Java Components, including domain specific ones like Geotools and uDig, a platform for geodata visualization based on Eclipse RCP, as well as general purpose frameworks like Hibernate and GridGain.
After an introduction into our application domain, this talk will focus on our usage of OSGi and Eclipse technology.
Textual DSLs with Xtext
Sven Efftinge, itemis AG ()
Xtext is a framework for developing textual domain-specific languages (DSL). Given an EBNF-like grammar, Xtext automatically generates an Ecore meta model, a rich-featured, fully configurable DSL-editor, and the skeleton of a code generator based on Xpand. Xtext is a component in the Modeling/TMF subproject, and it is planned to be part of Eclipse Galileo.
In this demo I'll first show how to define a textual domain-specific language using Xtext's grammar language. After that you'll see the generated editor's features like code completion, syntax highlighting, navigation, and folding, and show how the user can override the default functionality. Finally, I feed an exemplary code generator with the models created using the editor, thereby demonstrating Xtext's capability for agile domain-driven development.
Plugin reuse and adaptation with Object Teams: Don't settle for a compromise!
Stephan Herrmann, (TU Berlin)
When reusing existing plugins for something innovative, you're likely to do things the original plugin author has not anticipated. This typically brings about some kinds of compromise:
- You adjust your requirements to what the reused plugins provide. Thus you settle for a different product than you intended.
- Or, you refrain from reuse but develop everything from scratch, settling for much lower productivity.
- Or, you apply some brute force method (like copy&paste) to get your job done, but then you settle for a brittle design, that is a pain to maintain.
With Object Teams it is possible to eat the cake (apply unanticipated adaptations by disciplined aspect bindings) and still have it (sustain a well modularized, maintainable design). OT/Equinox brings this power to the development of Eclipse plugins (Equinox bundles).
This demo will show several real world examples from the implementation of the OTDT itself. Included are adaptations of a variety of plugins like JDT, Debug, PDE, JUnit, Workbench etc.