bakaq
16734ec7e4
Fix Clippy
2024-09-06 21:34:49 -03:00
bakaq
d32f3ee2f3
Fix warnings
2024-09-06 18:42:31 -03:00
bakaq
ada9ba98cc
Make macros private
2024-09-06 17:17:04 -03:00
Bennet Bleßmann
6b50ec328c
move the creation of the LIBRARIES IndexMap out of the generated file
...
- only leave the filling of the map in the generated code
2024-07-25 18:53:36 +02:00
Bennet Bleßmann
e7fd408548
use include_str! for the build in libraries
...
instead of "copy-paste-ing" the prolog source into rust string literals in the generated files
2024-07-23 00:01:29 +02:00
Bennet Bleßmann
1d66f91a41
replace ref_thread_local::ref_thread_local! with std::thread_local!
...
removes `ref_thread_local` which was still at 0.0.0 released October 2018 while latest 0.1.1 was released mid November 2021
fixes libraries.rs UB
2024-07-06 17:18:26 +02:00
Bennet Bleßmann
d2d451b182
adjust the generation of the LIBRARIES map
...
pre-genrate constants instaed of driectly genrating the literal for the insert
2024-07-06 03:53:22 +02:00
Mark Thom
bcfa0219e2
detect External indices more generally in internalize_constant ( #2395 )
2024-04-29 14:23:14 -06:00
Mark Thom
84d5ce0d1e
Merge pull request #2309 from coasys/library-use-case
...
Iron-out edge cases for library use-case, adding extensive real-world test assertions
2024-02-28 14:34:54 -07:00
Markus Triska
27852eafd7
ADDED: Hash-based message authentication code (HMAC), using hmac(Key).
2024-02-22 20:53:27 +01:00
Mark
614850ab1d
fmt
2024-02-05 18:34:57 -07: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
Mark
6111f72b24
add non chunk traversing cut family instructions to is_head_instr ( #2307 )
2024-01-25 23:25:06 -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
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
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
Mark
27b971cbfa
add registers to inlined instruction functors
2023-10-01 23:50:07 -06:00
Mark
a1ceeb697a
consider an '$aux' a relation of the unexpanded goal's variables in compile_inline_or_expanded_goal ( #2062 )
2023-10-01 23:49:55 -06:00
Mark
6fa00b5b55
get rid of inference_limit_exceeded(B) as an error term ( #2023 )
2023-09-30 22:35:46 -06:00
Adrián Arroyo Calle
660860bccf
Replace Hyper with Warp for HTTP server
...
- Use Warp
- Optimize clones
- HTTPS server
- Content-Length limit
- HTTP Basic Auth
- Stop server with Ctrl-C
2023-09-27 18:50:19 +02:00
Mark
de440a8c92
get rid of OssifiedOpDir, DBRef, simplify current_op/3
2023-09-11 15:36:15 -06:00
Rujia Liu
b6ce6b7cdb
Basic WebAssembly support with minimal Javascript API #615 . Currently 6/12 crypto functions supported. Tested in browser with all default features disabled.
2023-09-08 17:27:22 +08:00
Skgland
b2130c2a48
run cargo fmt
2023-09-05 19:12:17 +02:00
Mark
5585e83fd6
correct inference counting over index backtracking, built-ins ( #1977 , #1987 )
2023-09-04 17:15:16 -06:00
Mark
66f6399b8a
refine is/2 compilation so errors are thrown when expected without needlessly allocating ( #1974 , #1984 )
2023-08-29 16:42:23 -06:00
Rujia Liu
f6d3b2f896
Make Atom 64-bit regardless of architecture
2023-08-20 19:43:13 +08:00
Mark
60d9d01a55
Merge branch 'add_float_integer_part_and_float_fractional_part_standard_functions' of https://github.com/pmoura/scryer-prolog into pmoura-add_float_integer_part_and_float_fractional_part_standard_functions
2023-07-21 15:35:28 -06:00
Mark
1697cd5c7f
add log10, hyperbolic tan and inverse hyperbolic tan functions ( #1898 )
2023-07-20 12:33:51 -06:00
Mark Thom
1ba040c24d
Merge pull request #1885 from mthom/setof_bagof_fixes
...
Fix group_by_variants/4 and keysort in setof/3
2023-07-18 12:35:10 -06:00
Mark
42a50474da
remove read/{1,2} as a builtin, write read options upon EOF, throw better domain errors in parse_read_term_options/2
2023-07-17 16:45:03 -06:00
Mark
5a7da721cd
add read_term_from_chars/3 ( #637 )
2023-07-15 11:20:20 -06:00
Mark
ff5e9a793b
add unknown flag to set_prolog_flag and current_prolog_flag
2023-07-14 19:10:10 -06:00
Mark
101d0548db
fix group_by_variants/4 and keysort in setof/3 ( #1440 , #1856 )
2023-07-14 18:52:29 -06:00
Mark
b6a81c51ab
add (:-)/1 and (:-)/2 to ClauseType::is_inbuilt ( #1872 )
2023-07-14 12:44:28 -06:00
Mark
4fd37335f5
use lookahead to skip inapplicable clauses ( #1028 , #1502 )
2023-07-12 14:39:02 -06:00
Mark
483e4568a2
add scc_block to MachineState to avoid SCC cleanup terms being deallocated too early ( #1427 )
2023-07-06 11:20:49 -06:00
Mark
9cdad087ef
add double_quotes write option for printing to strings, enable it at toplevel
2023-07-03 12:09:05 -06:00
Mark
b593fffc7d
support module resolution in current_predicate/1 ( #1817 )
2023-06-27 11:08:29 -06:00
Mark
4ad113a6f8
mark is/2 allocated permanent variables as safe, add CompareNumber terms to ClauseType::is_inlined
2023-06-23 14:11:31 -06:00
Mark
d7f5675727
improve call/N implementation ( #1829 )
2023-06-23 14:11:31 -06:00
Mark
0e583d620a
implement new disjunction compilation
2023-06-23 14:11:31 -06:00
Mark Thom
942095baa7
remove GetLevelAndUnify and replace it with GetCutPoint
2023-06-23 14:11:30 -06:00
Mark Thom
d565f5901b
milestone marker for surgery
2023-06-23 13:54:04 -06:00
Mark
c5a3ec3ba8
fix current_predicate/1 ( #1761 )
2023-04-24 23:23:27 -06:00
Mark
f35298a227
add and document inlined_instructions/2 to/in diag.pl ( #1791 )
2023-04-22 18:38:49 -06:00