Mark
5ed1802f0f
read set_value args from temp regs of put_unsafe_value ( #1812 )
2023-06-23 14:11:31 -06:00
Mark
749dedf477
read from machine stack in stackful pre-order iterator ( #1812 )
2023-06-23 14:11:31 -06:00
Mark
e0f49e8f43
optionally read from machine stack in stackful pre-order iterator ( #1812 )
2023-06-23 14:11:31 -06:00
Markus Triska
c2f2623471
extend logic to all control and whitespace characters
...
This addresses #1802 .
2023-06-23 14:11:31 -06:00
Mark
8e4465315f
use same logic to print Chars and Atoms ( #1804 )
2023-06-23 14:11:31 -06:00
Markus Triska
47d4e6d2f9
FIXED: consistent read/write of further control characters, and non-breaking space
...
Example:
?- X = '\xa0\'.
X = '\xa0\'.
This addresses #1768 .
2023-06-23 14:11:31 -06:00
Mark
33f65210ee
make tests compatible
2023-06-23 14:11:31 -06:00
Mark
0e583d620a
implement new disjunction compilation
2023-06-23 14:11:31 -06:00
Mark Thom
b9c9de5222
add classifications and occurrence counting
2023-06-23 13:54:46 -06:00
Mark Thom
ec9c763211
print index_ptr offset ( #1534 )
2022-10-26 23:36:07 -06:00
Mark Thom
1ffbf63d20
inline metacalls
2022-10-26 23:36:07 -06:00
Mark Thom
4b5c22864e
don't print superfluous round brackets in curly braces ( #1416 )
2022-05-31 23:34:55 -06:00
Mark Thom
5e1faeb5d2
fix broken quoting in writeq/1 ( #1498 )
2022-05-31 18:29:42 -06:00
Mark Thom
b9285f8de1
don't quote most characters in strings ( #1495 , #301 )
2022-05-30 23:09:20 -06:00
Mark Thom
2d5fe21b05
avoid writing chars to the atom table in several places
2022-04-17 12:20:00 -06:00
Mark Thom
064bfa5e0d
fix loop in stackful iterator ( #1405 , #1384 )
2022-04-07 20:48:40 -06:00
Mark Thom
f3167f6b5f
add forwarding bit to all heap cells ( #1384 )
2022-04-05 20:34:27 -06:00
Mark Thom
8c99d748e2
allocate floats in dedicated buffer
2022-04-05 20:34:27 -06:00
Mark Thom
48960f1beb
print closed stream handle as '$dropped_value' ( #1376 )
2022-03-28 19:03:33 -06:00
Mark Thom
cf65cbe2f1
dereference numbervars terms ( #1377 )
2022-03-28 18:58:38 -06:00
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
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
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
c55bfa2c6e
throw errors on cycles in sort/2 and keysort/2 ( #1350 and #1351 )
2022-03-13 11:03:52 -06:00
Mark Thom
eace0d9b37
print rationals that are integers as integers ( #663 )
2022-03-09 21:24:16 -07:00
Mark Thom
664c0ee77c
fix float formatting ( #1331 )
2022-03-07 19:44:39 -07:00
Mark Thom
26e4560429
pop pstr offsets from iterator stack in printer ( #1290 )
2022-02-25 23:36:26 -07:00
Mark Thom
e4ea547623
print bounded depth partial strings correctly
2022-02-07 14:09:22 -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
2f0718e885
fix write_canonical on strings ( #1233 )
2022-02-05 20:40:28 -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
f6116510a1
print -0.0 as 0.0 ( #1164 )
2022-01-18 21:31:14 -07:00
Mark Thom
3b8afce7c7
fix syntax regressions ( #1198 , #1164 )
2022-01-13 23:54:55 -07:00
Mark Thom
ef0b239e70
correctly print [] functors ( #1189 )
2022-01-10 17:26:57 -07:00
Mark Thom
955e1799c8
flatten the instruction dispatch loop
2022-01-06 22:09:36 -07:00
Mark Thom
3db86f1e25
relocate most instruction routines from MachineState to Machine
2022-01-06 21:46:23 -07:00
Mark Thom
b056d40eba
module-qualify incomplete goals in expand_goal/3
2022-01-06 21:44:41 -07:00
Mark Thom
6c66c236fb
fix printing of CStr's
2022-01-06 21:44:41 -07:00
Mark Thom
0404c3bd94
use new heap term representation
2022-01-06 21:44:38 -07:00
Skgland
49e024bdd8
remove unused fields instead, prompting more dead_code removal
2021-11-11 19:32:35 +01:00
Skgland
7bc4876071
fix failing lint warnings in beta build
2021-11-11 18:53:08 +01:00
Mark Thom
d0b25de554
add user_error stream ( #917 )
2021-04-30 21:58:03 -06:00
Mark Thom
69b1798af7
print floating point zero as 0.0 ( #859 )
2021-03-17 20:17:08 -06:00
Mark Thom
6c23d7aec8
always print variable bindings before names ( #865 )
2021-03-17 19:27:53 -06:00
Mark Thom
08e2b601f1
pop non-composite terms from iter stack in is_cyclic_term
2021-02-28 12:28:19 -07:00
Skgland
2f428b7261
split into lib and bin
...
* makes most pub things in src/ pub(crate) as not to expose things accidentally
* only those things needed by src/bin/scryer-prolog.rs and tests/scryer.rs
should be pub
* split src/main.rs into src/lib.rs and src/bin/scryer-prolog.rs
* add tests folder and run most of the files in src/tests with cargo test
added bytes method to Stream in src/machine/streams.rs to check if stdout is as expected
2021-02-28 19:21:30 +01:00