Consult not failing on syntax errors
Downloaded the latest build from the github action artificacts. On Windows.
PS C:\Users\doug\code\prolog_workbook> & 'C:\users\doug\Downloads\scryer-prolog_windows-latest_x86_64-pc-windows-msvc (1)\scryer-prolog.exe' -v
12a61cd
I think should fail:
?- F="c:/users/doug/broken.pl", atom_chars(G,F), consult(G).
F = "c:/users/doug/broke ...", G = 'c:/users/doug/broken.pl'.
and this also
?- consult(broken).
true.
Here is c:/users/doug/broken.pl
foo(X) :X.
not even a prolog program.
what is going on.
A : B.
On Linux:
?- [broken].
error(instantiation_error,functor/3).
Very unfortunate that none of the active developers of Scryer use Windows. I will try to reproduce this in Wine, because that would be a way to catch at least some of the Windows bugs.
@bakaq I do keep thinking of buying a computer to run Linux on for hobby projects. Is is probably not common to run Scryer on windows.
Still, Windows is a very big platform that we are basically unable to properly support currently, which is very unfortunate. I've not been able to cross-compile Scryer Prolog yet. Rust cross-compilation is surprisingly intricate, but I think it's mostly because I'm on NixOS which complicates everything.
Still, Windows is a very big platform that we are basically unable to properly support currently, which is very unfortunate. I've not been able to cross-compile Scryer Prolog yet. Rust cross-compilation is surprisingly intricate, but I think it's mostly because I'm on NixOS which complicates everything.
Unfortunately I know no rust and am very slowly learning prolog, so it is hard for me to contribute anything but things I have trouble with. And I think there could be more of a developer guide, and overview to the code, how unit tests run, project conventions for PRs etc.
And I think there could be more of a developer guide, and overview to the code, how unit tests run, project conventions for PRs etc.
Yeah. It seems Scryer Prolog grew organically from a small personal project into what it is today. Maybe it's time to think about "big repo" stuff like a CONTRIBUTING.md, ARCHITECTURE.md, code of conduct, some structure to issues and PRs (currently is very freeform), etc...
On the other hand, I was able to compile Scryer to x86_64-pc-windows-gnu and run it through Wine! I can't reproduce this exact bug though, it still gives the same error as in Linux for me. Maybe this is a bug specifically with x86_64-pc-windows-msvc (which is the target you are actually using), or just a bug that Wine can't reproduce.
It doesn't have to be much, maybe a list of what is in what directory. If there are unit tests, what package are they built with and how does one run them. How does one contribute to documentation.
I can build scryer but that is about it.
Maybe the problem is some sort of user error on my part.
Maybe it's time to think about "big repo" stuff like a CONTRIBUTING.md, ARCHITECTURE.md, code of conduct, some structure to issues and PRs (currently is very freeform), etc...
Please do everything you can to keep bureaucratic overhead minimal. The more rules you add and the more complex it becomes to contribute, the more you will choke this project.
One book I recommend in this regard is The Collapse of Complex Societies by Joseph Tainter.
@triska Agree 100%. A simple overhead of how the code is organised, where to store tests, how to run them, just to get devs going, would be helpful.
Still, Windows is a very big platform that we are basically unable to properly support currently, which is very unfortunate. I've not been able to cross-compile Scryer Prolog yet. Rust cross-compilation is surprisingly intricate, but I think it's mostly because I'm on NixOS which complicates everything.
Well I got myself a linux box for hobby projects. Managed to get scryer building.