scryer-prolog
scryer-prolog copied to clipboard
ISO core `ensure_loaded/1` directive is not recognized
Using the ensure_loaded/1 directive in Prolog text results in an error at load time:
e.g.
$ cat .\scratch.pl
:- ensure_loaded(some_file).
$ scryer-prolog.exe .\scratch.pl
error(domain_error(directive,ensure_loaded/1),load/1).
This directive is defined in ISO/IEC 13211-1:
7.4.2.8 ensure_loaded/1
A directive
ensure_loaded(P_text)specifies that the Prolog text being prepared for execution shall include the Prolog text denoted byP_textwhereP_textis an implementation defined ground term designating a Prolog text unitWhen multiple directives
ensure_loaded(P_text)exist for the same Prolog text, that Prolog text is included in the Prolog text prepared for execution only once. The position where it is included is implementation defined.
Related: #634.