Re: XProc execution model

A minor note:  The key thing about the architecture, from my perspective
as a (former) implementer and (occasional) user is that neither party
has to understand (or can depend) on the order in which anything
happens.  In particular, it's _perfectly_ OK as an implementation
strategy to simply start _every_ step instance in the pipeline(s)
running, in whatever order you and the underlying thread / processor
implementation find convenient, and everything will be just fine.
Almost all of them will block waiting for input, and wake up and get to
work when and only when there is any real work to do.

There's also a minor consequence of this which actually simplifies step
implementation: _nothing_ in step instance initialisation can assume
that _any_ other step instance has been initialised before it.

ht
-- 
       Henry S. Thompson, School of Informatics, University of Edinburgh
      10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440
                Fax: (44) 131 650-4587, e-mail: ht@inf.ed.ac.uk
                       URL: http://www.ltg.ed.ac.uk/~ht/
 [mail from me _always_ has a .sig like this -- mail without it is forged spam]

The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.

Received on Friday, 29 May 2020 22:27:44 UTC