1Plumbing: module 2{ 3 4 PATH: con "/dis/lib/plumbing.dis"; 5 6 Pattern: adt 7 { 8 field: string; 9 pred: string; 10 arg: string; 11 extra: list of string; 12 expand: int; 13 regex: Regex->Re; 14 }; 15 16 Rule: adt 17 { 18 pattern: array of ref Pattern; 19 action: array of ref Pattern; 20 }; 21 22 init: fn(regexmod: Regex, args: list of string): (list of ref Rule, string); 23}; 24