Re: Pipeline proposal

Richard,

> Except as described in conditionals, all components in a pipeline
> are run (in particular, they do not get run only if input arrives or
> output is requested).

I agree with a most of ideas you present in this document, and the
phrase I am quoting here is maybe the only exception. I prefer the way
you word it in your response to Jeni: "I think the compiler should run
everything unless it can prove that it will make no difference", but
this still makes me a little nervous.

It all comes back to our respective background and the use cases we
have in mind. The use cases I work with on a daily basis here involve
pipelines being executed to generate a web page. As this is a "real
time" environment, where someone is waiting for the page to come up
while we are running the pipeline, it is important for the pipeline
engine to be able to recognize parts of the pipelines that in fact
don't need to be executed, because the engine somehow already knows
what the result is going to be. We call this behavior of the engine
"caching".

I see caching as something that don't want to specify in the language;
it would be considered as an "implementation detail". But it is IMHO
important for the pipeline language to be designed in a way that does
not prevent someone from writing an implementation that performs
caching.

Alex
--
Blog (XML, Web apps, Open Source):
http://www.orbeon.com/blog/

Received on Thursday, 30 March 2006 03:04:42 UTC