hasloops: {deps:&'x; d:deps; #,/((#deps)(,/'deps@)/d)>0}; order: {deps: {$[+/x>0;&x;()]}'x; ?,/deps}; dm: ((0 0 0 0 0);(1 0 0 0 0);(0 0 0 0 1);(1 1 0 0 0);(0 0 1 1 0)); :hasloops[dm]; :order[dm];