From 417548361eb0c7a4c449245d19436e24d1b7f80a Mon Sep 17 00:00:00 2001 From: Peter Mikkelsen Date: Tue, 7 Dec 2021 09:34:54 +0000 Subject: Move prolog site --- sites/pprolog.org/index.md | 72 ---------------------------------------------- 1 file changed, 72 deletions(-) delete mode 100644 sites/pprolog.org/index.md (limited to 'sites/pprolog.org/index.md') diff --git a/sites/pprolog.org/index.md b/sites/pprolog.org/index.md deleted file mode 100644 index 4d0efc5..0000000 --- a/sites/pprolog.org/index.md +++ /dev/null @@ -1,72 +0,0 @@ -# Introduction - -This is the website for PProlog, a new prolog implementation written -in C on and for plan 9 (9front specifically). Work started in december 2020 -due to the author's need for a prolog system on 9front. It is pure experimentation -and the code might be bad in more than a few places. - -*NOTE:* There is no development currently, and it is in a kinda broken state after -a failed attempt of adding modules. - -# Features - -* A base system based on the WAM (Warren abstract machine) implemented by following the book [here](http://wambook.sourceforge.net/wambook.pdf). -* Support for extended precision arithmetic via [mp(2)](http://man.9front.org/2/mp). -* Basic support for definite clause grammars (DCGs). For now DCG's are translated by the parser into difference lists and they do not support everything one expects. -* Lists. -* Strings represented as list of char atoms. -* The basic control predicates such as `,/2`, `;/2`, `->/2` and cut. -* Full unicode support. - -# Status - -At this moment the system works OK but it has very few builtin predicates -and much of what people expect from a working prolog system is still missing. - -The list of builtins as of January 13, 2021 is: - -* `is/2` -* `halt/0` -* `consult/1` -* `write/1` -* `read/1` -* `call/n` -* `fail/0` -* `>/2` -* `==/2` -* `atom/1` -* `integer/1` -* `float/1` -* `var/1` -* `compound/1` -* `term_variables/2` - -And the following predicates are implemented in the standard library: - -* `=/2` -* `\=/2` -* `reverse/2` -* `samelength/2` -* `append/3` -* `member/2` -* `select/3` -* `length/2` -* `nl/0` -* `phrase/2` -* `\+/2` -* `false/0` -* `true/0` -* `repeat/0` -* `once/1` -* `,/2` -* `;/2` -* `->/2` -* `=\=/2` - -and many more all listed [here](https://git.sr.ht/~pmikkelsen/pprolog/tree/master/item/stdlib.pl). - -# Screenshot - -[![A picture of pprolog in action][1]][1] - -[1]: /_images/screenshot.png -- cgit v1.2.3