diff --git a/src/toplevel.pl b/src/toplevel.pl index b46bf49d..4a861259 100644 --- a/src/toplevel.pl +++ b/src/toplevel.pl @@ -108,6 +108,17 @@ repl :- repl :- repl. +%% Enable op declarations with lists of operands, i.e., +%% :- op(900, fy, [$,@]). + +user:term_expansion((:- op(Pred, Spec, [Op | OtherOps])), OpResults) :- + expand_op_list([Op | OtherOps], Pred, Spec, OpResults). + +expand_op_list([], _, _, []). +expand_op_list([Op | OtherOps], Pred, Spec, [(:- op(Pred, Spec, Op)) | OtherResults]) :- + expand_op_list(OtherOps, Pred, Spec, OtherResults). + + read_and_match :- '$read_query_term'(_, Term, _, _, VarList), instruction_match(Term, VarList).