Re: Directed vs Generic Syntax

Alessandro Vernet wrote:
> On 4/13/06, Norman Walsh <Norman.Walsh@sun.com> wrote:
> 
> I have to agree with Norm on the question of syntax being discussed here:
> 
> 1) The schema for the language would depend on the components provided
> by a given implementation. This is the case with in Ant, but is
> otherwise fairly unconventional.

It is an extension to the schema.  If we write our schema properly,
that's OK.

> 2) Extending the pipeline language becomes harder. Say we want in the
> future the pipeline author to be able to specify that a given input or
> output has to be valid according to a schema. We would be unable to
> just add an attribute "schema" on <p:input> or <p:output>.

No harder than adding an extension element in XSLT.

I'm imaging a two part solution to "custom" steps:

   1. A generic "run the step called X" step.

   2. A directed syntax where an step can have its own XML structure
      to simplify its use.  This is much like how tasks get defined
      in Ant.

> 3) The syntax imposes unnecessary restrictions: inputs and outputs
> must have different names, an input cannot be named "input" and an
> output cannot be named "output".

That's up to the extension to figure out and tell the compiler.

> 4) It becomes impossible to know without knowing the interface of the
> component being used if a attribute corresponds to an input or an
> output.

I don't see this as impossible. Components still have to declare their
signatures for the compiler to know things like you gave it two inputs
and it only takes one and so that's an error.

--Alex Milowski

Received on Thursday, 20 April 2006 15:28:07 UTC