Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Package]: GNU Prolog (gprolog) #8781

Open
1 task done
MikeAmy opened this issue Jan 27, 2022 · 1 comment
Open
1 task done

[Package]: GNU Prolog (gprolog) #8781

MikeAmy opened this issue Jan 27, 2022 · 1 comment
Labels
package request A new package was requested

Comments

@MikeAmy
Copy link

MikeAmy commented Jan 27, 2022

Package description

GNU Prolog is a well-known Prolog in the Prolog community. It aims for high ISO conformance. It is recognized as a fast Prolog as it is capable of compiling its WAM code down to machine instructions. It is a mature (since 1996) Prolog supporting DCGs, Constraint Logic Programming (natively) and other features expected of modern Prologs.

Termux packages includes SWI-Prolog (swipl) which is also a well-recognized Prolog. However, GNU Prolog produces small, fast executables and this compactness also makes it suitable for embedding, both inside other executables and on resource-constrained devices. This should also mean it is well within the 100 MB limit.

Recently, GNU Prolog 1.5.0 added arm and aarch64 support (in addition to x86 and x86_64), and I successfully built and ran it on Termux on an aarch64 phone, with the author's assistance. Therefore it should be ready to build for all platforms targeted by termux-packages.

For the above reasons, I wished to be create a package for gprolog for termux-packages and submit a pull request, but I wasn't quite able to figure out how to test the build/packaging procedure for all platforms, and gave up. I don't know which chat platform to ask on.

However, the author's guidance was very easy to follow and I didn't encounter any major issues with the build. Therefore I think it should be straightforward for an experienced termux-packages developer to add this package, if deemed a worthy package.

As a seasoned developer myself who is using several Prologs, I would be interested in maintaining the package if I can be pointed to the right guide steps. It appears to have infrequent updates as it is already mature, and the author seems friendly and helpful at solving issues.

Home page URL

http://www.gprolog.org

Source code URL

https://github.com/didoudiaz/gprolog

Packaging policy acknowledgement

Additional information

I successfully compiled it on my own aarch64 device. At first I had issues, but basically it was minor compiler issues.

The author, Daniel Diaz, kindly modified the source to compile on termux and provided assistance which was easy to follow to set the compiler, and it then compiled without issue. The author also suggested removing build steps for the optional documentation.

see didoudiaz/gprolog#3

@MikeAmy MikeAmy added the package request A new package was requested label Jan 27, 2022
@xtkoba
Copy link
Contributor

xtkoba commented Jan 27, 2022

Building on device is one thing. Cross building is another. We have seen a bunch of instances where programming language interpreters / compilers have issues when cross building. Is gprolog cross-build friendly?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
package request A new package was requested
Projects
None yet
Development

No branches or pull requests

2 participants