2 use Module::Runtime qw(use_module);
3 use DX::Utils qw(dict deparse);
5 BEGIN { *u = \&use_module }
7 my $scope = u('DX::Scope')->new(
10 $_ => u('DX::Predicate::'.join('', map ucfirst, split '_', $_))->new
11 ), qw(eq member_at is_dict)
17 my $exp = u('DX::Expander')->new;
19 my $tcl = u('Tcl')->new;
21 foreach my $pred (keys %{$scope->predicates}) {
22 $tcl->CreateCommand($pred => sub {
23 my (undef, undef, undef, @args) = @_;
24 Dwarn [ $pred, $exp->expand_args(@args) ];
28 my $rl = u('Caroline')->new;
30 while (my $line = $rl->readline('$ ')) {