On Sat, Oct 24, 2020 at 10:35 PM Guillaume Nodet <gno...@apache.org> wrote:
>
> Nice work.  I hope we'll be able to leverage that nicely.
> I stopped working on that because I initially focused on splitting the
> model from the runtime + builders, but it's quite difficult to split the
> model from the builders and the builders from the runtime.
>

Yeah the builders and the models are tightly connected. And you can
also argue that builders are part of the model as they help build the
model (from Java DSL).

But your idea of source code generate the Java DSL and other language
DSL is still a great idea. So if we can find a way to make the model
separated from the builder then we are getting closer. Or have a
generic base model, and then extend this for the current model that
are tied to the current builders to keep it compatible with the Java
DSL as we have today.

But if we can get a clean model we can more better be able to
experiment with source code generate a new Java DSL and for other
languages. Its when we can do this we can easier support this - as in
the past it was hand maintained and they got out of sync.






> Guillaume
>
> Le sam. 24 oct. 2020 à 19:26, Claus Ibsen <claus.ib...@gmail.com> a écrit :
>
> > Hi
> >
> > I got started this weekend on more modularization of core, where we
> > can move out model and reifier from the engine, so they are separated.
> > https://issues.apache.org/jira/browse/CAMEL-15740
> >
> > I wanted to do this over the weekend where the activity on the master
> > branch is lower than week days.
> >
> > I have the work done for the core repo, but would possibly need small
> > tweaks in camel-karaf (for its blueprint xsd generator) and maybe also
> > in spring-boot.
> >
> > With this moduralization we are getting closer to, and would make it
> > easier in the future to be able to do more build time optimizations
> > and class unloading / dead code elimination.
> >
> > My hope is we get to a point where we can offer a full build time
> > optimization that takes the DSL and via the model and reifiers build
> > the runtime processors (routes) and then at *real* runtime we can drop
> > all the model and reifier all together.
> >
> > Having them separated and in their own module / JAR makes this work easier.
> >
> > There is still some work as CamelContext has a ModelCamelContext /
> > Model that we somehow need to find a way to drop in an extreme
> > optimization.
> >
> >
> >
> > --
> > Claus Ibsen
> > -----------------
> > http://davsclaus.com @davsclaus
> > Camel in Action 2: https://www.manning.com/ibsen2
> >
>
>
> --
> ------------------------
> Guillaume Nodet



-- 
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2

Reply via email to