Mark Thom
96a9dfcc1b
Merge pull request #3185 from mthom/install_verify_attr_opt
...
Optimize `verify_attr` by removing the need to scan instructions
2025-12-03 19:10:46 -07:00
Mark Thom
3b019fca1d
corrections to dispatch loop
2025-11-27 21:03:22 -08:00
Mark Thom
4bd16b8a2e
revise InstallVerifyAttrs to remove need for predicate scanning ( #3175 )
2025-11-25 23:17:51 -08:00
Mark Thom
f2e044e5b8
remove interms field from MachineState
2025-11-24 22:19:36 -08:00
Skgland
e9e97fe82a
handle machine heap/stack allocation error
2025-11-19 22:17:24 +01:00
Mark Thom
fc6e007ad1
add missing P increment to GetPartialString ( #3089 )
2025-09-17 20:31:03 -07:00
Mark Thom
ba7b54e8f8
fix attempted bind to bound StackVar ( #3089 )
2025-09-17 19:43:37 -07:00
Skgland
6f3f66c407
fix builds without ffi feature
2025-08-24 21:08:52 +02:00
Skgland
20d52c093a
add ffi:{allocate,read_ptr,deallocate}
2025-08-24 19:56:23 +02:00
David C. Norris
af3792f79a
library(numerics), special funs from crate puruspe
2025-08-10 10:01:01 -04:00
Bennet Bleßmann
dc08a4ab11
get process_create working and add tests
2025-08-01 20:47:22 +02:00
Bennet Bleßmann
ca52c65902
don't remove the child on wait/kill
...
- important for wait with timout(0) as we may want to try again until the process has realy exited.
- make process_release release the process instead
2025-08-01 20:33:15 +02:00
Bennet Bleßmann
97e2e5d7f0
implement process_release/1, process_wait/2, process_wait/3, and process_kill/1
2025-08-01 20:27:27 +02:00
Bennet Bleßmann
ae0baf4893
[WIP] add support to spawn new processes
2025-08-01 20:18:13 +02:00
Bennet Bleßmann
ae3019d923
fix unecessary reference/dereference
2025-07-31 21:46:51 +02:00
Mark Thom
762b63e1f4
use granular hierarchical locks in offset_table.rs
2025-07-07 22:44:02 -07:00
Mark Thom
2844b5a958
synchronize offset table growth with the borrowing of offset pointers
2025-07-07 22:39:47 -07:00
Mark Thom
1332611f83
use OffsetTableImpl without synchronization by default
2025-07-07 22:39:47 -07:00
Bennet Bleßmann
cbdd0fbf15
make Fixnum::build_with harder to accidentally misuse
...
change trait bound order for better
2025-07-07 22:39:34 -07:00
Mark Thom
706ffe7ad9
fix functor! size calculations around indexing_code_ptr
2025-07-07 22:38:12 -07:00
Mark Thom
39ea2d5899
make self.s_offset use bytes in case of HeapPtr::PStr in UnifyVoid ( #2897 )
2025-07-07 22:38:12 -07:00
Mark Thom
6bcbb91e08
correctly increment s_offset for partial strings ( #2897 )
2025-07-07 22:38:12 -07:00
Mark Thom
4c46f0e54d
correct GetPartialString ( #2887 )
2025-07-07 22:38:12 -07:00
Mark Thom
e563fd8e4f
generalize compare_pstr_segments
2025-07-07 22:38:12 -07:00
Mark Thom
22080f3787
move CodeIndex to F64Table-like table
2025-07-07 22:38:12 -07:00
Mark Thom
9e1e99f961
Revert "remove Term"
...
This reverts commit 3b5879841aedecba5057c70c71da0ba23e5cd84a.
2025-07-07 22:38:10 -07:00
Mark Thom
ae4d12a123
remove pstr_vec
2025-07-07 22:02:27 -07:00
Mark Thom
c0f72704ec
introduce bespoke Heap type for in-heap partial strings
2025-07-07 21:59:50 -07:00
Mark Thom
1ef681bd21
remove Term
2025-07-07 21:54:08 -07:00
bakaq
6d80c843e6
Scan entire predicate in InstallVerifyAttr
2025-02-05 11:40:05 -03:00
bakaq
b8ccebbf24
Fix bug in finding arity for verify attributes
2025-02-04 04:11:11 -03:00
Emilie Burgun
6cedbc33c0
Fix load_context_module triggering unreachable code in unify_atom
2025-01-08 17:57:40 +01:00
notoria
8cde3f8ce3
Add '$random_integer'/3
2024-12-08 20:00:00 +01:00
bakaq
16734ec7e4
Fix Clippy
2024-09-06 21:34:49 -03:00
bakaq
ada9ba98cc
Make macros private
2024-09-06 17:17:04 -03:00
Mark
42f4827854
make indexer downcast Integers to Fixnums when possible, be slightly more judicious about allocating Integers instead of Fixnums ( #2340 )
2024-02-29 16:15:28 -07:00
Markus Triska
27852eafd7
ADDED: Hash-based message authentication code (HMAC), using hmac(Key).
2024-02-22 20:53:27 +01:00
Mark
6fe8f64835
scan registers of instructions leading to verify_attributes interrupt to find the number of registers to save ( #2307 )
2024-01-25 23:59:54 -07:00
Adrián Arroyo Calle
47b5ae7984
Move argv/1 to library(os)
2024-01-02 13:16:11 +01:00
Markus Triska
47ec5eb6c6
ENHANCED: Use crrl for Ed25519 signing and signature verification.
...
The main motivation for this change is the introduction of the newly
available predicate ed25519_seed_keypair/2, allowing to generate a key
pair from a given seed. In this way, a key pair can be dynamically
generated from (for example) a password, using crypto_password_hash/3
in combination with crypto_data_hkdf/4 to generate the seed. The
advantage of this method is that the private key need not be stored at
all anywhere.
It is not possible to add a corresponding feature to ring, since it is
closed as "not planned": https://github.com/briansmith/ring/issues/1003
I also used this opportunity to move more of the logic to Prolog. We
now have total control of the key pair representation, and I also
changed the representation to conform to the PKCS#8 v2 standard,
something that only later ring versions do, while still being
backwards compatible with tools that produce a wrong representation
including earlier ring versions.
Another great advantage we get from this change is that the Ed25519
predicates now also run on the 32-bit and WASM versions of Scryer.
2023-12-26 07:33:44 +01:00
Mark Thom
2e114df4c7
Merge pull request #2173 from aarroyoc/js-eval
...
Add js_eval/2 for wasm32
2023-11-22 21:52:49 +01:00
Adrián Arroyo Calle
36ab590c4e
Add js_eval/2 for wasm32
2023-11-22 21:21:19 +01:00
Mark
ef8eb935d4
add CutPoint to select_switch_on_term_index ( #2176 )
2023-11-22 08:57:23 -07:00
Mark
54166b91eb
add global_count inference counter that is always incremented ( #2009 )
2023-11-20 16:24:31 -07:00
infogulch
9444e62df9
Resolve lints and format
2023-11-04 02:16:54 -05:00
Nicolas Luck
ee1bd9e006
Merge branch 'master' into library-use-case
2023-11-02 11:12:54 +01:00
Mark
dfd9e43405
correct (\+)/1 ( #2141 )
2023-10-31 23:58:59 -06:00
Mark
8f06ef965a
remove non-conforming hyperbolic and log10 evaluable functors
2023-10-28 18:17:43 -06:00
Nicolas Luck
69cf2c36bc
Deactivate tokio runtime respawning on interrupt
2023-10-05 12:11:28 +02:00
Mark
6fa00b5b55
get rid of inference_limit_exceeded(B) as an error term ( #2023 )
2023-09-30 22:35:46 -06:00