summaryrefslogtreecommitdiff
path: root/loader.pl
diff options
context:
space:
mode:
authorPeter Mikkelsen <peter@pmikkelsen.com>2021-07-22 16:58:42 +0000
committerPeter Mikkelsen <peter@pmikkelsen.com>2021-07-22 16:58:42 +0000
commit0cf3816c9419954317fd54da5a063615402bf1d1 (patch)
tree5d9448eae4b0d8bf10f6f6d8b71be45506eda234 /loader.pl
parentb1f62daf95818858863af0cfe7138a0acac751b2 (diff)
Actually load repl.pl with the prolog loader, and handle module directives
Diffstat (limited to 'loader.pl')
-rw-r--r--loader.pl6
1 files changed, 5 insertions, 1 deletions
diff --git a/loader.pl b/loader.pl
index 7fa6734..3d94566 100644
--- a/loader.pl
+++ b/loader.pl
@@ -65,6 +65,10 @@ handle_directive(include(F), Module, NewModule) :-
close(S).
handle_directive(ensure_loaded(F), Module, Module) :-
ensure_load(F).
+handle_directive(module(NewModule, Exports), Module, NewModule) :-
+ is_atom(NewModule),
+ '$new_empty_module'(NewModule).
+ % Do something about the exports as well.
handle_directive(D, Module, Module) :-
write('Cannot handle directive: '),
write(D),
@@ -75,5 +79,5 @@ ensure_loads(_) :- fail.
ensure_load(F) :-
( ensure_loads(F)
-> true
- ; asserta(ensure_loads(F)), load_module_from_file(F)
+ ; loader:asserta(ensure_loads(F)), load_module_from_file(F)
).