Alexander McLin
533594b6b6
Fixes issue 3264 by adding a fallback read mode when reading from non-tty stdin on Windows
2026-05-25 18:13:01 -04:00
Mark Thom
43b6afcdf3
Merge pull request #3342 from Skgland/pdl-pairs
...
ensure pdl is pushed/popped in pairs and reuse tabu_list allocation by moving it from a local variable into the machine state
2026-05-25 15:10:02 -06:00
Mark Thom
ad13aa3801
Merge pull request #3320 from Skgland/all-pure-rust
...
add a feature for enabling all features that don't pull in non pure rust dependencies
2026-05-25 14:36:04 -06:00
Mark Thom
79597b63bf
Merge pull request #3317 from Skgland/optimize-put_back_char
...
optimize put_back_char
2026-05-25 14:03:31 -06:00
Skgland
bdba7ba0f5
merge crypto-impure feature into feature crypto-full
2026-05-25 19:07:20 +02:00
Skgland
6c7d5e8278
more spelling fixes
2026-05-25 16:39:37 +02:00
Skgland
61ebcdb56e
fix spelling
2026-05-24 23:55:19 +02:00
Skgland
f2195c2362
cleanup
...
- fix some warnings and mark others as expected
- make use of the msrv bump to 1.93.1 and cleanup compat and workarounds
2026-05-24 23:29:23 +02:00
Skgland
938f588769
make crypto depending on ring optional
2026-05-24 23:00:27 +02:00
Mark Thom
cf9e667b50
Merge pull request #3311 from Skgland/cleanup2
...
some cleanup and fixes
2026-05-23 18:27:50 -06:00
Mark Thom
3f0b471227
Merge pull request #3333 from 0nkery/lazy-lock
...
replace lazy_static macro with std::sync::LazyLock
2026-05-23 09:51:22 -06:00
Skgland
e4792429d3
reuse tabu list
2026-05-17 20:50:37 +02:00
Skgland
d50d425099
ensure pdl is pushed/popped in pairs
2026-05-17 19:48:52 +02:00
Dmitry Shlagoff
2bbb6487ec
remove redundant closure
2026-05-12 16:12:33 +02:00
Dmitry Shlagoff
095fa1227a
replace lazy_static macro with std::sync::LazyLock
2026-05-12 15:40:38 +02:00
Skgland
0c313a0849
upgrade libffi dependency
2026-05-08 22:36:41 +02:00
Skgland
b4db85c8c3
don't erase ptr type early when construction a Cons HeapCellValue
...
rather than passing an address as usize pass the ArenaHeader pointer
similarly don't return a u8 ptr but use a ArenaHeader pointer instead
Don't convert the pointer to a ConsPtr by going through native endian
bytes in between.
We are exploiting the fact that the 3 least significant bytes are zero
for pointer to types of alignment 8 and we expect these to line up with
the f, m, and tag field at the end of the ConsPtr struct, but using
native endiannes for this would only work on big endian systems.
2026-04-25 18:12:31 +02:00
Skgland
6765921666
fix unused import warning on windows
2026-04-25 16:19:58 +02:00
Skgland
ff293a56e6
fix large enum variant size difference warning of PermVarAllocation
...
by wrapping BranchNumber in an Arc.
PermVarAllocation::Done had size 208 and is now down to 32.
A Box rather than an Arc would be smaller, but it looks like BranchNumber/BranchDesignator are clones a bunch so I expect it to be beneficial to reduce allocations both of the Box itself as well as its content.
2026-04-25 16:19:53 +02:00
Mark Thom
8dffd72db5
replace tabs with spaces
2026-04-21 16:22:38 -07:00
Mark Thom
703a6dddd1
dereference compare_term_test args down from stack ( #3286 , #3295 )
2026-04-21 16:02:55 -07:00
Mark Thom
5ea262e1d3
replace tabs with spaces
2026-04-21 15:02:14 -07:00
Mark Thom
010b00f349
take Lis index from rd in copy_var ( #3298 )
2026-04-21 14:31:53 -07:00
Mark Thom
9cf0d8b484
Merge pull request #3274 from no382001/issue3262
...
fix read/1 on non-TTY stdin blocking until newline
2026-04-18 18:16:53 -06:00
Mark Thom
87f97c7e5c
Merge pull request #3276 from Skgland/cleanup
...
remove unused file
2026-04-08 22:18:32 -06:00
Mark Thom
3e2f3ecfdb
Merge pull request #3273 from no382001/issue2914
...
fix panic in current_prolog_flag/2 when arguments are the same variable
2026-04-04 13:06:11 -06:00
Skgland
bb9c1cf5a2
remove unused file
2026-04-03 00:16:59 +02:00
no382001
28f8da5ce9
restructure based on suggestion
...
Co-authored-by: Bennet Bleßmann <3877590+Skgland@users.noreply.github.com >
2026-03-31 21:14:54 +02:00
no382001
c065b52778
fix read/1 on non-TTY stdin blocking until newline #3262
2026-03-31 15:52:27 +02:00
no382001
6a10c6d6a5
fix panic in current_prolog_flag/2 when arguments are the same variable
2026-03-31 12:01:00 +02:00
Skgland
3c9c7ade8d
use checked_add to prevent silent overflow
2026-03-27 22:00:54 +01:00
Skgland
5fc21241d6
hint to the compiler/branch-predictor that
...
we expect p to be in bound
if we are suffiently certain that p can never be oob
unsafe get_unchecked could be used to
eliminate bounds checking all together
which should improve performance further.
2026-03-21 19:01:52 +01:00
Skgland
833c3bd77f
run rustfmt
2026-03-21 14:24:13 +01:00
Skgland
153f04b72a
adjust interrupt handling
...
we used to spend ~5.8% of the time on getting the next value of the 0..INSTRUCTIONS_PER_INTERRUPT_POLL iterator
increment on Wrapping<u8> now only takes ~0.58 of the time
2026-03-21 14:20:11 +01:00
Skgland
8aab887388
switch from Integer to u128
...
- u128 is only 16 bytes instead of 24
- incrementing u128 does not involve heap allocations
- u128 should be sufficent
it would take more than 2 sextilion years to overflow if we would be incrementing it every tick at 5GHz
i.e. 2^128-1 / 5 GHz / 60 / 60 / 24 / 356 > 2 sextilion
before this ~3.2% of the execution time of the program in https://github.com/mthom/scryer-prolog/issues/3265#issuecomment-4103176469 was spend in the increment_call_count function, after this change it's down to 0.3%
2026-03-21 13:36:40 +01:00
Mark Thom
79a9b950cb
Merge pull request #3243 from danilp-id/master
...
fix http stream not being closed fully
2026-03-19 23:36:58 -07:00
Mark Thom
b0b89a0aca
Merge pull request #3258 from no382001/fix_load_xml/3
...
load_xml was returning a single term instead of a list of nodes
2026-03-14 22:46:03 -07:00
no382001
025da8315b
load_xml was returning a single term instead of a list of nodes
2026-03-10 12:20:34 +01:00
Mark Thom
4d144ea819
Merge pull request #3252 from Skgland/towards-a-crate-without-syn@1
...
replace custom modular_bitfields fork with update upstream
2026-03-09 22:08:28 -07:00
Mark Thom
02c927bb83
Merge pull request #3241 from Skgland/parse-error-improvements
...
change `ParserError` type
2026-03-09 22:07:03 -07:00
Mark Thom
4a8388a6e9
Merge pull request #3189 from Skgland/fix-function_casts_as_integer
...
fix `function_casts_as_integer` warning
2026-03-09 22:06:33 -07:00
Thierry Marianne
4bd0ff0fcb
cargo fmt fixes
...
Signed-off-by: Thierry Marianne <thierry@marianne.io >
2026-03-04 14:04:47 +01:00
Thierry Marianne
ed59aa05b0
apply suggestion
...
Signed-off-by: Thierry Marianne <thierry@marianne.io >
2026-03-04 14:01:17 +01:00
Thierry M.
fa21ff4813
use CStr .to_str() method
...
Co-authored-by: Bennet Bleßmann <3877590+Skgland@users.noreply.github.com >
2026-03-04 14:00:44 +01:00
Thierry Marianne
fae9ca1bb9
fix utf-8 panic
...
Signed-off-by: Thierry Marianne <thierry@marianne.io >
2026-03-04 12:45:58 +01:00
Skgland
7d0d61d789
remove no longer necessary allows
2026-02-20 22:45:09 +01:00
Skgland
5ef5a3f30a
replace custom modular_bitfields fork with update upstream
...
part of #2468
2026-02-20 22:40:33 +01:00
Danil Platonov
337d9c5583
move drop to impl Drop
2026-01-26 04:57:28 -08:00
Danil Platonov
26523139a8
fix http stream not being closed fully
2026-01-25 03:16:37 -08:00
Skgland
18b476af28
make ParserError a struct with an enum kind field
2026-01-24 04:08:40 +01:00