def evaluator
import bendvy-ecs-core@0.1.0.4/ordinary_condition_declaration.bend as OrdinaryConditionDeclarationimport Base
import bendvy-ecs-core@0.1.0.4/world.bend as W
58# Consume a program to obtain its slot-indexed World-threading evaluator.
59# Use slots from the matching materialized/validated program; arbitrary callback
60# mutations or host effects are not transactionally isolated by this adapter.
61def evaluator(~S:Data,~C:Type,~R:Type,~E:Data,~Ids:Data,program:Program<S,C,R,E,Ids>) -> W.World<S,C,R,E> -> U32 -> W.World<S,C,R,E> & Bool:
62 match program:
63 case Program{_,_,_,evaluate}:evaluate