"Schuh, Richard" wrote: > 'PIPE (end \) ... build commands ... | f: fanout | spec /response/ 1 | stack > \ f: | command | cons'
> if the command fails and crashes the pipe, the worst that can happen > after the crash is one unrecognized command. How about when one command fails to read its response from the stack but *doesn't* kill the whole pipe, though? If you're really using the same response every time, it won't matter, but otherwise all the remaining commands will read the wrong responses. You can avoid this by using another copy of the input record to empty the stack after each command: \ f: | specs /callpipe stack || *:/ 1 | pipcmd | ... report errors ... If you don't care about these errors, I suppose you could use STACK LIFO and just let the unread responses pile up. Actually, STACK LIFO might be a good idea either way, so you don't have to worry about what might be on the stack when you start. ¬R
