]> Repositorios git - scryer-prolog.git/commitdiff
remove now unnecessary dependencies, correct ordering of ! in (;)/3
authorMark Thom <[email protected]>
Sat, 2 May 2020 02:38:44 +0000 (23:38 -0300)
committerMark Thom <[email protected]>
Sat, 2 May 2020 02:38:44 +0000 (23:38 -0300)
src/main.rs
src/prolog/lib/builtins.pl
src/prolog/toplevel.pl

index ff24d88c6ca3a43a31ff99f9753db52d42d2e31f..fc38f3f03a15942b5f0942f41449739fc6ed3570 100644 (file)
@@ -13,7 +13,6 @@ extern crate prolog_parser;
 #[macro_use]
 extern crate ref_thread_local;
 
-use git_version::git_version;
 use nix::sys::signal;
 
 mod prolog;
@@ -22,7 +21,6 @@ use crate::prolog::machine::*;
 use crate::prolog::machine::streams::*;
 use crate::prolog::read::*;
 
-use std::env;
 use std::sync::atomic::Ordering;
 
 extern fn handle_sigint(signal: libc::c_int) {
index cb676b9be9cd48f9dc669e9ab16f21ee925a61c6..0cebab9b44a71e9c16345b0cd35a28ce5bf7f963 100644 (file)
@@ -217,8 +217,8 @@ comma_errors(G1, G2, B) :- '$call_with_default_policy'(','(G1, G2, B)).
 semicolon_compound_selector(->(G2, G3), G4, B) :-
     (  call(G2) ->
        call(G3)
-       ;  '$set_cp'(B),
-          call(G4)
+    ;  '$set_cp'(B),
+       call(G4)
     ).
 semicolon_compound_selector(','(G2, G3), G4, B) :-
     (  ','(G2, G3, B)
@@ -233,9 +233,13 @@ semicolon_compound_selector(';'(G2, G3), G4, B) :-
 
 :- non_counted_backtracking (;)/3.
 ;(G1, G4, B) :-
-    compound(G1),
-       semicolon_compound_selector(G1, G4, B),
-    !.
+    ( (  G1 = (_ -> _)
+      ;  G1 = (_ , _)
+      ;  G1 = (_ ; _) 
+      ) ->
+      !,
+      semicolon_compound_selector(G1, G4, B)
+    ).
 ;(G1, G2, B) :-
     G1 == !, !, '$set_cp'(B), call(G2).
 ;(G1, G2, B) :-
@@ -1144,4 +1148,3 @@ parse_stream_options_(eof_action(Action), eof_action-Action) :-
     ).
 parse_stream_options_(E, _) :-
     throw(error(domain_error(stream_option, E), _)). % 8.11.5.3i)
-
index ad095c199a704cacdab5a0001c3166448e73c689..c78463b22f428d8932eee3df3ec8c8b205cab9f7 100644 (file)
@@ -11,8 +11,8 @@
 '$repl'([_|Args0]) :-
     \+ argv(_),
     (   append(Args1, ["--"|Args2], Args0) ->
-            asserta(argv(Args2)),
-            Args = Args1
+        asserta(argv(Args2)),
+        Args = Args1
     ;   asserta(argv([])),
         Args = Args0
     ),
@@ -152,10 +152,10 @@ submit_query_and_print_results(Term0, VarList) :-
 
 needs_bracketing(Value, Op) :-
     catch((functor(Value, F, _),
-              current_op(EqPrec, EqSpec, Op),
-              current_op(FPrec, _, F)),
-             _,
-             false),
+          current_op(EqPrec, EqSpec, Op),
+          current_op(FPrec, _, F)),
+         _,
+         false),
     (  EqPrec < FPrec -> true
     ;  '$quoted_token'(F) -> true
     ;  atom_length(F, 1), graphic_token_char(F) -> true