summaryrefslogtreecommitdiff
path: root/main.c
AgeCommit message (Collapse)Author
2021-07-22Big commit changing the way the system is loaded at startup.Peter Mikkelsen
1) The loader and system modules are loaded by the C directly into the user module 2) The system module is then loaded with the loader from the user module 3) The loader module is then loaded with the loader from the user module 4) The repl is then loaded with the loader from the loader module 5) The user module is cleared
2021-07-22Use the prolog loader to load the repl.Peter Mikkelsen
2021-07-16Handle -d option in prologPeter Mikkelsen
2021-07-16Pass arguments to repl/1Peter Mikkelsen
2021-07-16Replace the C repl with one written in prolog :)Peter Mikkelsen
2021-07-07Add copy_term/2Peter Mikkelsen
2021-07-05First step on modules. Still very very rough.Peter Mikkelsen
2021-07-03Add one global choicestack so we don't need to pass it aroundPeter Mikkelsen
2021-07-03Start adding support for read_term and write_termPeter Mikkelsen
2021-07-02Start work on input/output streamsPeter Mikkelsen
2021-07-02Remove strings, and add a (currently not changable) flag 'double_quotes' ↵Peter Mikkelsen
which defines how double quoted strings are stored.
2021-06-30Allow the repl to backtrack to give alternative resultsPeter Mikkelsen
2021-06-30Add a standard library with the "builtins" that doesn't really need to be ↵Peter Mikkelsen
actual builtins
2021-06-30Add a basic replPeter Mikkelsen
2021-06-30Add backtracking to the evaluator. This means we have to keep track of ↵Peter Mikkelsen
choicepoints which is implemented the easy but wasteful way for now. I have also added a number which is used to differentiate variables from different application of the clauses.
2021-06-30Start work on an evaluator. For now it knows how to unify but doesn't know ↵Peter Mikkelsen
how to handle builtin predicates or how to backtrack
2021-06-29Understand :-initialization(Goal) directivePeter Mikkelsen
2021-06-29Make parse return a list of clauses. Also pretty print the entire list of ↵Peter Mikkelsen
clauses.
2021-06-29Add a term parser.Peter Mikkelsen
2021-06-28Initial commit. Start working on a new prolog implementation for 9front, now ↵Peter Mikkelsen
that I at least have a better understanding of what goes into a compiler :)