The process library is concerned with process execution. The execution models include running programs and recording their output (much like shell command substitution) and starting processes with their input and output streams piped to internal streams (ala popen(3)).
The library describes one ‘sshell’ type, modeling the waited and recorded program execution, and one ‘xshell’ type, modeling the started piped program execution.
The shell objects aggregate objects of such types as list, time, file and byta data. The operation of the shell objects is done mostly through the aggregated objects. The aggregated objects are regular constructs of data types provided by the list, time, file and byta data library objects.
See The List Library.
See The File Library.
See The Date And Time Library.
See The Byte Data Library.
The various properties of the process execution contexts are described via the aggregated objects. Thus the shell objects describe the list of command line arguments of the executed processes as a ‘list’ object and the path to the executable as a ‘data’ object.
The aggregated objects are full fledged objects of their respective types. They may be interogated from the shell objects and do retain a identity beyond that of their shell aggregators. They may even survive the shell objects (if they are linked into other aggregators (such as ‘list’ containers) or associated with variables).
|• Piped Process Execution:|
|• S Shell Functions:|
|• X Shell Functions:|
|• X Shell Flag Definitions:|