Commit Graph
100 Commits
Author SHA1 Message Date
Mark Thom 046a2175ab use ryu to print floats with a modification for compatible syntax (#1368, #1372) 2022-03-27 11:28:10 -06:00
Mark Thom 83def95383 fix char comparison misordering (#1371) 2022-03-26 21:44:37 -06:00
Mark Thom 012fefa37e retrieve F64 behind Cons tags properly (#1369) 2022-03-26 21:18:07 -06:00
Mark Thom 4878e42e07 Merge pull request #1370 from triska/files_must_be_chars
ENHANCED: use newly available must_be(chars, ...), which is very fast
2022-03-26 12:30:58 -06:00
Mark Thom 94d7c6dc5f fix functor/3 arity check (#1366) 2022-03-25 18:07:22 -06:00
Mark Thom 23bfb4da50 advance arg in arithmetic comparison code (#1367) 2022-03-25 17:30:47 -06:00
Mark Thom 1f21a5fe62 detect float rounding overflows (#1365) 2022-03-24 10:25:42 -06:00
Mark Thom 2173a8e3cb recognize missing syntax errors (#1354, #1361) 2022-03-22 22:48:51 -06:00
Mark Thom 067e2633af compare TypedArenaPtr<T> by value not pointer (#1362) 2022-03-22 00:55:44 -06:00
Mark Thom d916da9ba8 use Rust's native UTF-8 functions (#1355) 2022-03-19 16:52:27 -06:00
Mark Thom c2fc33afec correct float version of sign/1 (#1360) 2022-03-19 15:55:23 -06:00
Mark Thom 3d4e400ed2 accept remaining UTF-8 codepoints as alphabetic characters (#1355) 2022-03-18 17:49:54 -06:00
Mark Thom 75d719d204 print most characters directly ((#1355) 2022-03-17 18:43:30 -06:00
Mark Thom 172e3e9f34 check self.ignore_ops and max_depth in print_rational (#1359) 2022-03-17 18:08:30 -06:00
Mark Thom 8e32bdd8db remove pstr offsets unconditionally from printer iteration stack, deal with fallout after the fact (#1357) 2022-03-16 19:11:39 -06:00
Mark Thom 895b02b641 improve length/2 (#1325) 2022-03-15 18:43:57 -06:00
Mark Thom d06b5f7ab5 prepare for publishing to crates.io (#1335) 2022-03-15 00:07:42 -06:00
Mark Thom e88ec6736c add (:) meta-predicate argument indicator (#1302) 2022-03-13 13:54:58 -06:00
Mark Thom 922abf21e7 derefence target variable in check_sort_errors (#1350) 2022-03-13 13:54:58 -06:00
Mark Thom c55bfa2c6e throw errors on cycles in sort/2 and keysort/2 (#1350 and #1351) 2022-03-13 11:03:52 -06:00
Mark Thom 5463c1d47f point code index to switch_on_term after appending indexed clause to single-clause predicate (#1346) 2022-03-12 20:44:09 -07:00
Mark Thom 3513a9c7ba Merge pull request #1349 from Skgland/min-rust-version
Set minimum rust version in Cargo.toml (Attempt 2)
2022-03-12 13:12:03 -07:00
Mark Thom 64c9ac4071 Merge pull request #1348 from mthom/revert-1347-min-rust-version
Revert "Set minimum rust version in Cargo.toml"
2022-03-12 11:10:25 -07:00
Mark Thom 75fc922898 Revert "Set minimum rust version in Cargo.toml" 2022-03-12 11:10:17 -07:00
Mark Thom 59e2c3fd5e Merge pull request #1347 from Skgland/min-rust-version
Set minimum rust version in Cargo.toml
2022-03-12 11:07:03 -07:00
Mark Thom dfbdaa9dab Merge pull request #1342 from wkral/no-add-history
Add --no-add-history flag
2022-03-11 18:25:47 -07:00
Mark Thom eace0d9b37 print rationals that are integers as integers (#663) 2022-03-09 21:24:16 -07:00
Mark Thom d83b32a200 print variables instead of offsets in setup_call_cleanup tests 2022-03-08 22:05:54 -07:00
Mark Thom 9cefb33388 correct loading of variable name strings in write_term/3 2022-03-08 22:00:12 -07:00
Mark Thom bd5d6d0686 fix parser bounds check bug (#1333, #1301) 2022-03-08 21:25:19 -07:00
Mark Thom ecebaf8216 unify empty list to '' in atom_chars/2 (#1334, #1336) 2022-03-08 18:25:40 -07:00
Mark Thom 8762647b55 wrap meta-predicate specifications in functors (#1330) 2022-03-07 22:36:52 -07:00
Mark Thom 664c0ee77c fix float formatting (#1331) 2022-03-07 19:44:39 -07:00
Mark Thom 7a9c3d351d Merge pull request #1332 from triska/call_nth_0
ENHANCED: call_nth(Goal, 0) now fails, correct error for N < 0.
2022-03-07 15:16:47 -07:00
Mark Thom bd594e0c05 fix number/1 (#1329) 2022-03-06 19:17:52 -07:00
Mark Thom 3bf42860e2 Merge pull request #1328 from pmoura/fix_bounded_and_max_arity_flags
Fix querying the values of the bounded and max_arity flags
2022-03-06 18:51:14 -07:00
Mark Thom 1808597258 compare functor arity first (#1327) 2022-03-06 16:37:21 -07:00
Mark Thom 2744989cf1 fix compare/3 (#1327) 2022-03-06 15:49:01 -07:00
Mark Thom 0d04abb5c7 Merge pull request #1326 from pmoura/fix_halt_1_predicate_compliance
Fix halt/1 built-in predicate for ISO Prolog Core standard compliance
2022-03-06 14:46:46 -07:00
Mark Thom 475fbf9561 Merge pull request #1323 from triska/simplex
ADDED: library(simplex), for solving linear programming problems.
2022-03-06 13:46:32 -07:00
Mark Thom bc9123affb only recommend git cloning to get the latest scryer version in README.md 2022-03-06 10:27:25 -07:00
Mark Thom 7fd12972ad Merge pull request #1322 from triska/explain_strings_better
DOC: Better explanation of strings and partial strings.
2022-03-06 10:07:37 -07:00
Mark Thom 2d19243b3b Merge branch 'rebis-dev' into 0.9.0 release
Test / build (macos-10.15, beta) (push) Has been cancelled
Test / build (macos-10.15, stable) (push) Has been cancelled
Test / build (ubuntu-20.04, beta) (push) Has been cancelled
Test / build (ubuntu-20.04, stable) (push) Has been cancelled
2022-03-06 09:45:05 -07:00
Mark Thom 0c19c56909 mark variables in ArithmeticEvaluator (#690) 2022-03-05 17:57:10 -07:00
Mark Thom de35baadf3 use must_be(chars) in read_from_chars/2 (#1305) 2022-03-05 17:39:13 -07:00
Mark Thom 66c209f9e4 reset ReadlineStream from read_query_line (#1317, #1285) 2022-03-05 17:39:13 -07:00
Mark Thom d7a3ed2d4a change domain_error(integer, ..) to type_error(integer, ..) in random.pl (#1310) 2022-03-05 17:39:13 -07:00
Mark Thom 0c25ffc26e dereference list link in delete_attribute (#1148) 2022-03-05 17:39:03 -07:00
Mark Thom a38f7c8524 save arguments to delayed goal before calling verify_attrs (#1304) 2022-03-01 23:59:41 -07:00
Mark Thom bf85cd404c Merge pull request #1313 from triska/all_solutions
ADDED: "a" to enumerate all solutions
2022-03-01 15:34:21 -07:00
Mark Thom c2b360d03e Merge pull request #1312 from triska/str_loc_as_cell
FIXED: load_html/3: use str_loc_as_cell! to store attribute structures
2022-03-01 12:09:42 -07:00
Mark Thom 1b4b4807a5 refer to structures using str_loc_as_cell! (#1311) 2022-02-28 18:28:13 -07:00
Mark Thom d4d135f2a9 fix unexpected error in length/2 (#1303) 2022-02-27 11:38:48 -07:00
Mark Thom 96faad1c01 add proper error throwing for call_with_inference_limit/3 (#1296) 2022-02-27 11:38:44 -07:00
Mark Thom d55d5f15ae compare '[]' in pstr_comparator of compare_term_test (#1299) 2022-02-25 23:57:27 -07:00
Mark Thom 26e4560429 pop pstr offsets from iterator stack in printer (#1290) 2022-02-25 23:36:26 -07:00
Mark Thom 775bd3a08b unify '' to [] in unify_complete_string (#1292, #1288) 2022-02-25 23:01:08 -07:00
Mark Thom d92d8bce89 recognize [] as equivalent to "" in unify_atom (#1288) 2022-02-22 23:45:58 -07:00
Mark Thom 1b91663244 Merge pull request #1287 from triska/rebis-dev-sgml
FIXED: library(sgml): load_html/3 and load_xml/3 now both work again.
2022-02-22 15:55:03 -07:00
Mark Thom 063f0da565 correct '$skip_max_list/4' for non-lists (#1276) 2022-02-20 23:44:18 -07:00
Mark Thom c893247107 update setup_call_cleanup tests 2022-02-19 01:00:02 -07:00
Mark Thom a5adcfff4c adjust dynamic external indices upon retraction, reset dynamic_mode to Next regardless of success or failure 2022-02-19 01:00:02 -07:00
Mark Thom d3583276b3 throw instantiation_error on variables from (#1283) 2022-02-19 01:00:02 -07:00
Mark Thom 55d8de1b23 delay callable errors in control predicates (#1282) 2022-02-19 00:59:59 -07:00
Mark Thom 5b829636cb build CStr's to vars in write_literal_to_var (#1284) 2022-02-15 22:33:29 -07:00
Mark Thom 68ac92a616 don't unify module-qualified variables to ! (#1281) 2022-02-14 18:46:15 -07:00
Mark Thom db20cda27a use VecDeque for generating indices during code generation (#1053) 2022-02-11 19:23:43 -07:00
Mark Thom 60dd47c696 add missing fact to beginning of tmember_t/3 (#1275) 2022-02-11 17:25:01 -07:00
Mark Thom 42da543980 group predicate subsequences by first instantiated arg (#1053) 2022-02-08 23:34:42 -07:00
Mark Thom e4ea547623 print bounded depth partial strings correctly 2022-02-07 14:09:22 -07:00
Mark Thom 33a6c81a07 update setup_call_cleanup tests 2022-02-06 21:46:06 -07:00
Mark Thom 9ba503cd6b use printer cycle detection when printing partial strings (#1263), refactor skip_max_list functions 2022-02-06 21:36:49 -07:00
Mark Thom f3f3dccf8e reference partial strings properly in read_term (#1271) 2022-02-06 15:14:18 -07:00
Mark Thom 2f0718e885 fix write_canonical on strings (#1233) 2022-02-05 20:40:28 -07:00
Mark Thom 7b8001d060 fix '$skip_max_list'/4 (#1260) 2022-02-05 18:33:30 -07:00
Mark Thom 3c022e4332 fix float formatting (#1233, #1258) 2022-02-05 18:33:27 -07:00
Mark Thom 37e34c5209 reset instruction pointers with calls, make HCPrinter::range_from safe (#1233) 2022-01-31 21:24:19 -07:00
Mark Thom 4b71607215 count cycle lengths in skip_max_list_cycle (#1260) 2022-01-31 18:23:16 -07:00
Mark Thom e62875ac90 tag length/2 as the source of finite_memory errors in list.pl (#1259) 2022-01-31 18:08:00 -07:00
Mark Thom 835345b89e Merge pull request #1257 from mthom/rebis-dev_improved-length
Improved length/2 and arg/3 range checking
2022-01-30 11:30:16 -07:00
Mark Thom 4ddacc707d add range check to arg/3 (#1250) 2022-01-29 12:50:09 -07:00
Mark Thom 0d653a2ce6 improve '$skip_max_list'/4 and length/2 (#1023, #110) 2022-01-29 12:47:26 -07:00
Mark Thom 3208260ef8 Merge pull request #1254 from triska/valid_dotdotdot
ENHANCED: Make toplevel output a Prolog term that can be read back also for "...".
2022-01-28 11:55:52 -07:00
Mark Thom b3006f6fd8 inline store & deref calls in '' (#1176) 2022-01-26 23:03:19 -07:00
Mark Thom 142ddcd57a use expand_goal directly for existential-qualified goals in all-solutions predicates (#1246) 2022-01-26 17:34:36 -07:00
Mark Thom a562793fce don't read into the heap while incrementing self.s (#1233, #1245) 2022-01-25 20:37:29 -07:00
Mark Thom e6c4ecfc10 lazily throw exceptions of dcg_body from goal-expanded phrase/{2,3} (#1244) 2022-01-22 14:55:18 -07:00
Mark Thom 5ff579f793 recognize []/N as callable (#1241, #989) 2022-01-21 08:10:59 -07:00
Mark Thom 8df346f377 expand phrase/{2,3} using dcg_body whenever possible 2022-01-21 08:10:55 -07:00
Mark Thom af76068297 module-qualify callables more liberally but not for built-ins (#1243) 2022-01-20 17:40:45 -07:00
Mark Thom 5dddf0a460 dereference car of Lis in HeapPStRIter::step (#1238) 2022-01-19 20:51:23 -07:00
Mark Thom 1854338ff4 throw errors from phrase/{2,3} where expected (#1220) 2022-01-19 20:19:47 -07:00
Mark Thom 11b96875e0 streamline and fix phrase/{2,3} (#1237) 2022-01-19 20:07:15 -07:00
Mark Thom 6462c524f4 Merge pull request #1236 from triska/omit-module-prefix
omit module prefix, because the goals are already module-qualified
2022-01-19 17:22:44 -07:00
Mark Thom ab77b6b28e Merge pull request #1235 from triska/better-initialization-warning
ENHANCED: more specific warning when initialization/1 fails (#1149)
2022-01-19 16:41:43 -07:00
Mark Thom 88436b8627 Merge pull request #1234 from aarroyoc/ctrld
Fix Ctrl-D in toplevel
2022-01-18 21:34:30 -07:00
Mark Thom f6116510a1 print -0.0 as 0.0 (#1164) 2022-01-18 21:31:14 -07:00
Mark Thom 5a132aaff4 throw error instead of overwriting builtin export (#1225) 2022-01-18 19:16:14 -07:00
Mark Thom 59992c8af2 remove number/3 from arithmetic.pl (#1170) 2022-01-18 17:38:45 -07:00
Mark Thom b980ae1e8c fix floor for f64 (#1223) 2022-01-17 22:04:10 -07:00