3 ms·
Scryer Prolog does delegate a lot of the work to Rust libraries and crates. For example, see the cryptographic functionality from library(crypto): https://gith
by triska 5y ago
Scryer Prolog does delegate a lot of the work to Rust libraries and crates. For example, see the cryptographic functionality from library(crypto):
https://github.com/mthom/scryer-prolog/blob/master/src/lib/crypto.pl https://github.com/mthom/scryer-prolog/blob/master/src/lib/c...
Note that many of these predicates are only wrappers for internal implementations that use the Rust crates. In fact, these existing Rust crates (notably ring) made it especially easy and convenient to add this functionality. library(sgml) is another example of this approach:
https://github.com/mthom/scryer-prolog/blob/master/src/lib/sgml.pl https://github.com/mthom/scryer-prolog/blob/master/src/lib/s...
On a general note, it is often an advantage to implement functionality in Prolog, because it helps to improve robustness and efficiency of the underlying engine, and makes changes easier.