my ($self, $vars, @terms) = @_;
my $rule_set = $self->rule_set;
push @terms, map +[ materialize => $_ ], @$vars;
- my $head = reduce { $b->but(next => $a) }
- reverse map $rule_set->expand(@$_), @terms;
+ my $head = $rule_set->expand_and_link(undef, @terms);
my $state = DX::State->new(
next_op => $head,
return_stack => [],