Industrial Batch (ISA-88 / S88)
Foodlang maps a recipe to an ISA-88 / S88-inspired batch procedure: a hierarchy of operations, each composed of ordered phases. This is the language of industrial process control — the same structure a batch reactor or a production coffee line would follow.
Honesty first. This is industrial inspiration, not a certified S88 recipe. The
industrial_mappablevalidation level reportspartialfor this reason.
Compile
foodlang compile examples/simple-latte.food.yaml --target s88
s88:
procedure:
- operation: PrepareEspresso
phases:
- GrindCoffee
- ExtractEspresso
- operation: PrepareMilk
phases:
- SteamMilk
- FoamMilk
- operation: AssembleDrink
phases:
- DispenseEspresso
- DispenseMilk
- DispenseFoam
Authoring
X-foodlang:
industrial:
s88:
procedure:
- operation: PrepareEspresso
phases: [GrindCoffee, ExtractEspresso]
If you don't author a procedure, Foodlang derives one from your transformations — each transformation becomes an operation with one phase.
Why it matters
The same .food.yaml that publishes to the web and drives a home coffee machine
also expresses the recipe in the vocabulary of factory batch control. One
source, every layer.