Orchestration
Task based execution in Stof.
Because Stof is both a declarative document and a functional interface, we can combine those worlds, executing objects as tasks rather than just the specific functions they contain.
This solves a common dilemma: declarative simplicity fails when specific flexibility and extensibility are needed. For example, maybe you have a declarative data connector but need to add just a line of logic to change something. Now, you can do it right in line with the declarative data.
Take a look at the Object Library for more information on the "exec" function.
Run Attribute
Object execution is controlled with a single #[run] attribute that can be placed on the fields of sub-objects and functions.
The value of the attribute (number) determines the order of execution. While functions and objects are sorted together, the default ordering dictates that sub-objects are executed before functions.
Types as Tasks
Because attributes can be placed on prototype functions, these are also considered during execution. This can be extremely helpful for transforming and working with external/imported data, as that data can be assigned a type and executed accordingly.
Object fields on prototypes are not considered in execution (only functions are). It is discouraged to place field data within prototype objects.
Last updated
Was this helpful?