| ▲ | andai 9 hours ago | |
What are the odds :) I made this two weeks ago, also with Claude. This one's a straight port, paip-python's[0] Prolog interpreter. (Itself based on Norvig's Paradigms of Artificial Intelligence Programming book, originally in Lisp.)[1] https://github.com/a-n-d-a-i/prolog.js It was in the web ui, so I expected it to give me a code block, but it spun up a vm, set up a npm project, generated tests... ran them. I was quite surprised. Your version is the opposite of mine, in a very good way. Your one is mostly tests! My version's tests are... well, you'll see ;) Both are surprisingly short. 700-ish for mine, ~1200-ish for yours (as far as the actual interpreter goes), right? That seems like a lot of bang per buck for something as powerful as a Prolog interpreter! I don't know very much about Prolog though, so maybe there's a lot of crucial parts missing here. At any rate the original is a teaching device, and the book[1] goes into some length on the limitations of Prolog, both this version and in general. [0] Original source in Python: https://github.com/dhconnelly/paip-python [1] Original original source in Lisp: https://norvig.github.io/paip-lisp/#/chapter11 | ||
| ▲ | AdieuToLogic 8 hours ago | parent [-] | |
> I don't know very much about Prolog though, so maybe there's a lot of crucial parts missing here. An easy way to find out if your implementation works is to try out the `likes.pl`[1] example found in the SWI-Prolog "Getting started quickly"[0] documentation. 0 - https://www.swi-prolog.org/pldoc/man?section=quickstart 1 - https://raw.githubusercontent.com/SWI-Prolog/swipl-devel/mas... | ||