camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James Strachan" <>
Subject Re: Thoughs on the camel dsl for 2.x
Date Mon, 03 Nov 2008 17:19:04 GMT
Awesome stuff Oisin! Gonna have a play!

2008/11/3 Oisin Hurley <>:
> On the subject of smart completion in IDEs, I've been experimenting with the
> Xtext ( to produce a simple, text-based
> editor with
> primitive syntax completion, error checking and outline views for Eclipse.
> There's some screenshots there to have a look at -- I started by looking at
> Vadim's ANTLR grammar, but drifted from that somewhat purely because I
> haven't fully grokked yet how Xtext does its thing.
> Camel processors seem to follow a basic genetic plan, with some semantic
> constraints, along the lines of
>  <processortype> <expression>
>      <action-section>
>      <targeting-expression>
>      <configuration-section>
> plus any scoping syntax to clump things accurately.  This could lead to a
> very clear grammar *but* it means that you have extra semantic-check
> pieces to put in to make up for the generic structure (i.e. for some processors
> you don't have configuration, or you can do any actions).
> Taking the from the editor perspective, the goals are really to be as
> deterministic
> as possible, so that when a syntax completion request comes in, the options
> that are presented to the developer make sense. Ideally, the semantic processing
> is minimized to cut down on the lag time before the completion pop-up occurs.
> The xtext grammar at goes down this route.
> Of course, the bit that's interesting is the approach of going
> editor-first. Xtext
> will generate an ANTLR grammar, as well as the model elements for a syntax
> aware editor and outline view, which is nice. However, the generated ANTLR
> isn't as, ah, elegant as you might want it to be. There's bound to some kind of
> maintenance issue going on there, as well as concerns not being correctly
> separated. Trade-offs persist.
>  --oh


Open Source Integration

View raw message