shithub: pprolog

RSS feed

3f26a0f2 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/07/03 17:16
Make the goalstack global just like the choicestack

66a7040d – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/07/03 16:59
Add one global choicestack so we don't need to pass it around

7db38904 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/07/03 14:58
Start adding support for read_term and write_term

d8144752 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/07/02 18:01
Start work on input/output streams

8dd4f85c – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/07/02 13:55
Fix Throw(What) macro

be26a1ce – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/07/02 13:50
Begin work on set_prolog_flag/2 and current_prolog_flag/2

2bfb79be – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/07/02 12:59
Remove strings, and add a (currently not changable) flag 'double_quotes' which defines how double quoted strings are stored.

855fd0a5 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/07/01 16:39
Add standard error predicates

e5ab41fa – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/07/01 15:55
Add exceptions :) implement catch/3 and throw/1

329c6975 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/30 20:52
Start implementation of is/2

2c166a14 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/30 20:25
Remove = from examples now that it is in stdlib

1ca36700 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/30 19:53
Add length/2 and member/2

d5ac4148 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/30 19:48
Prettyprint lists for reals

85adea62 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/30 19:30
Allow the repl to backtrack to give alternative results

fa83d3f1 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/30 18:43
Add =../2

a106f8db – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/30 17:38
Add arg/3

afbd5688 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/30 17:17
Add functor/3

ff418c79 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/30 16:51
Add comparison predicates

a8b1fadd – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/30 15:33
Add builtins for typetests

baea4aa9 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/30 13:48
Add a standard library with the "builtins" that doesn't really need to be actual builtins

50f83a91 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/30 13:03
Add support for builtins, and implement true/0, fail/0, call/1, and !/0 builtins

347e5bc5 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/30 10:15
Give queries another id than clauses, so variable names doesn't clash

8fde6e48 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/30 10:04
Commit repl.c file

ee4298a2 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/30 10:04
Add a basic repl

79d1fe1c – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/29 22:05
Add todo

67e8b85a – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/29 22:01
Treat the variable _ differently, in that it doesn't introduce a new binding

2c3e688c – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/29 21:58
Add backtracking to the evaluator. This means we have to keep track of choicepoints which is implemented the easy but wasteful way for now.

d5ce41f0 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/29 20:07
Start work on an evaluator. For now it knows how to unify but doesn't know how to handle builtin predicates or how to backtrack

9799fbd9 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/29 14:46
Understand :-initialization(Goal) directive

a27a5c52 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/29 14:31
Add more operators

50768fba – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/29 14:21
Make parse return a list of clauses. Also pretty print the entire list of clauses.

64a411ed – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/29 13:58
Parse terms in parenthesis correctly

6ae2e2bb – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/29 13:51
Parse lists and {a,b,c} syntax (What is this even called?)

2d7f3ffa – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/29 12:38
Parse , and make xfy do what it should

8fdf0bc6 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/29 12:28
Fix some parser errors, and accept clauses without a body

02145f06 – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/29 11:51
Add a term parser.

0b36426d – Peter Mikkelsen <peter@pmikkelsen.com> authored on 2021/06/28 18:31
Initial commit. Start working on a new prolog implementation for 9front, now that I at least have a better understanding of what goes into a compiler :)