Emilie Burgun
e68ac8347f
Document run_module_predicate and handle critical failure in toplevel.pl
2025-02-06 13:36:23 +01:00
Francis Fortier
c1571bf063
export toplevel repl/0
2024-12-05 09:38:38 -05:00
Stephan Renatus
e78914219e
toplevel: add more Stop=continue, remove nesting
...
Signed-off-by: Stephan Renatus <stephan@styra.com >
2024-11-03 13:31:47 +01:00
Stephan Renatus
620077d8c1
toplevel.pl: attempt to fix continue/stop logic
...
Signed-off-by: Stephan Renatus <stephan@styra.com >
2024-11-02 21:07:02 +01:00
Stephan Renatus
556b7c733f
toplevel.pl: fix arity mismatch in read_input/2
...
I ran into the same problem today and I figured I'd take a stab at it.
Unfortunately, I'm not certain it is the right approach, but it no
longer errors like it did before.
Fixes #2650 .
Signed-off-by: Stephan Renatus <stephan@styra.com >
2024-11-01 15:42:50 +01:00
bakaq
90d418a181
Fix priority in op/3
2024-10-12 23:37:58 -03:00
bakaq
190929e4ac
Remove trailing whitespace in toplevel.pl
2024-10-01 21:58:59 -03:00
bakaq
fdd6579230
Add mechanism to stop query
2024-09-07 02:06:01 -03:00
bakaq
a885e87ef7
Add argument with extra info to callback
2024-09-06 14:59:17 -03:00
bakaq
e369c15a27
Documentation for run_query/3 and run_query_goal/4
2024-09-06 14:55:39 -03:00
bakaq
afa7af3de6
Address review comments and remove old toplevel
2024-09-06 14:28:17 -03:00
bakaq
9f4d31a825
Toplevel reimplementation with leaf answer callbacks
2024-09-03 13:43:31 -03:00
Bennet Bleßmann
c24a51b633
fix looping from issue 2467
2024-08-17 23:37:12 +02:00
Mark
673329ddb7
fix reverted tests, ensure files are loaded before goals ( #2315 )
2024-02-03 11:49:26 -07:00
Mark
de6c460a51
treat consultation of command line modules as regular goals ( #2314 )
2024-02-02 15:35:00 -07:00
Mark
7573c64087
load .scryerrc before files and goals ( #1775 , #2313 )
2024-02-02 10:54:28 -07:00
Mark
bc616ca7d8
move call_residue_vars/2 from atts.pl to iso_ext.pl
2024-01-25 12:40:24 -07:00
Adrián Arroyo Calle
99c85459a7
Move copy_term/3 to library(iso_ext)
2024-01-19 17:33:45 +01:00
Mark Thom
5abc72cc8b
Merge pull request #2268 from aarroyoc/docs-toplevel
...
Small fixes in documentation and toplevel.pl
2024-01-03 14:52:34 -07:00
Adrián Arroyo Calle
d58e91303b
Small fixes in documentation and toplevel.pl
2024-01-03 19:52:50 +01:00
Mark Thom
5c89029462
Merge pull request #2263 from aarroyoc/docs-toplevel
...
Move argv/1 to library(os)
2024-01-02 09:19:10 -07:00
Adrián Arroyo Calle
47b5ae7984
Move argv/1 to library(os)
2024-01-02 13:16:11 +01:00
bakaq
d9d90d1ae8
Emit warnings as Prolog comments
2023-12-30 17:39:20 -03:00
bakaq
20c6a327ea
Fix anonymous attributed variables not showing in toplevel #2241
2023-12-22 13:07:09 -03:00
Mark
399b50b4d7
fix use of copy_term/3 for attribute goals in toplevel ( #888 , #2057 , #2217 )
2023-12-13 12:27:59 -07:00
Mark
3841b29db8
fix copy_term/2 variable copying bug in lists ( #923 , #2127 )
2023-11-21 14:52:35 -07:00
Nicolas Luck
136463c92e
Merge branch 'master' into library-use-case
...
# Conflicts:
# Cargo.toml
# src/atom_table.rs
# src/bin/scryer-prolog.rs
# src/http.rs
# src/machine/mock_wam.rs
# src/machine/mod.rs
# src/machine/system_calls.rs
2023-09-13 18:13:14 +02:00
Markus Triska
c934e06171
ADDED: New Prolog flag, answer_write_options.
...
This lets us specify additional write options used by the top level
for writing answers.
2023-09-03 10:49:07 +02:00
Nicolas Luck
48a4835819
Merge branch 'master' into library-use-case
...
# Conflicts:
# Cargo.lock
# Cargo.toml
# src/bin/scryer-prolog.rs
# src/loader.pl
# src/machine/mock_wam.rs
# src/machine/mod.rs
# src/machine/system_calls.rs
2023-08-03 20:16:32 +02:00
Nicolas Luck
644559b7f7
Add back newline at end of toplevel.pl
2023-07-17 21:52:17 +02:00
Nicolas Luck
5f8cc3c64b
WIP: refactor to generalize Machine::run_top_level()
2023-07-17 21:34:26 +02:00
Markus Triska
5d3295c40c
ENHANCED: use newly available read_term_from_chars/3 for better errors
...
Examples, previously:
$ scryer-prolog -g "member(X,Ls"
?-
$ scryer-prolog -g "member(X,Ls)"
member(_542,_543) causes: error(existence_error(procedure,member/2),member/2)
?-
Now:
$ scryer-prolog -g "member(X,Ls"
"member(X,Ls" cannot be read: error(syntax_error(incomplete_reduction),read_term_from_chars/3:0)
$ scryer-prolog -g "member(X,Ls)"
member(X,Ls) causes: error(existence_error(procedure,member/2),member/2)
?-
This also addresses #1185 .
2023-07-16 14:16:07 +02:00
Nicolas Luck
703efdb22d
Make run_input_once/0 match and print all results
2023-07-12 00:03:47 +02:00
Nicolas Luck
112d398175
Add Machine::run_input_once() which reads one goal from user input and runs it
2023-07-11 14:24:30 +02:00
Mark
fba7790637
remove errant debug_hook from read_and_match
2023-07-09 10:30:30 -06:00
Markus Triska
d18f128a3c
correct \\ to \, addressing #1865
2023-07-09 10:29:53 -06:00
Mark
c8b9059289
refine EOF handling more ( #1873 )
2023-07-09 10:29:47 -06:00
Markus Triska
6525c1f543
print version more readably, addressing #1868
2023-07-08 08:19:05 +02:00
Markus Triska
3b9b9e75c4
make double_quotes write option not dependent on double_quotes flag
...
This gives consistent results without depending on another flag.
2023-07-05 21:37:11 +02:00
Mark
9cdad087ef
add double_quotes write option for printing to strings, enable it at toplevel
2023-07-03 12:09:05 -06:00
Markus Triska
31030738a4
remove now unneeded check
2023-06-30 22:14:00 +02:00
Mark
caf84a259e
check that F in needs_bracketing/2 is an atom
2023-06-30 13:45:45 -06:00
Markus Triska
42282c6e6e
remove unneeded case: only operator definitions should count, not quoting
2023-06-30 18:03:21 +02:00
Markus Triska
a3f8ddd24a
remove subsumed case: F == Value means Arity =:= 0, now considered above
2023-06-30 18:02:43 +02:00
Markus Triska
bfe808a779
shorten needs_bracketing/2
2023-06-30 18:01:54 +02:00
Markus Triska
28065b0565
constrain bracketing to operators with pertaining arity
...
Example:
?- X = -->(a,b,c).
X = -->(a,b,c).
2023-06-30 18:01:17 +02:00
Markus Triska
db972de40c
bracket all operators that are direct operands of (=)/2
...
This addresses #804 .
2023-06-30 08:03:38 +02:00
Mark
98b0ab3409
improve call/N implementation ( #1829 )
2023-06-10 17:32:18 -06:00
Markus Triska
8ab1155fc5
ENHANCED: use call_residue_vars/2 to show all pending constraints
...
Example:
?- freeze(_, false).
freeze:freeze(_A,false).
This was originally added in 04ba9bc11a ,
then reverted, and is now restored.
2023-03-30 23:49:33 +02:00
Mark Thom
cc8bb38abc
Revert "use new call_residue_vars/2 in toplevel.pl ( #847 )"
...
This reverts commit 04ba9bc11a .
2023-03-14 21:34:48 -06:00