9 11 19 CAWP - multiple predicates - start a new predicate at each stage - other structures - brackets where may be needed - multiple levels - can call any current predicate (or library predicate) or new predicate with a call - timeout, max depth on 10 11 19: algwriter lp to p - put in mind reader do above 17 11 19 fills up last predicate first (and able to make calls to old or new predicates, where called new predicates are "before" the apical meristem of the rest of the predicate following the call in it - adds on to the correctly numbered predicate). [ call: pred1 head in1 out2 call in2 out3 call2 to pred that finishes off pred1 out2=out3 - call2 doesn't require further call2's after it - call2 not in available predicate list ] x Otherwise, finish pred1 in itself Records point of progress, adds new clause to pred after finishing single clause per predicate list - also for hierarchies (treated like list of predicates) X do 1-2 x n (for number of inputs) clauses First to account for recursion Variables set to Constants "", [] in calls