X-Prolog

ā§Š.ā§§
⧧⧍ā§Ŧ āϟāĻž āĻĒā§°ā§āϝāĻžāϞ⧋āϚāύāĻž
ā§§ā§Ļ āĻšāĻžāϜāĻžā§°+
āĻĄāĻžāωāύāĻ˛â€™āĻĄ
āϏāĻŽāϞ⧰ āĻŽā§‚āĻ˛ā§āϝāĻžāĻ‚āĻ•āύ
āϏāĻ•āϞ⧋
āĻ¸ā§āĻ•ā§ā§°ā§€āύāĻļā§āĻŦāϟ⧰ āĻĒā§āϰāϤāĻŋāĻšā§āĻ›āĻŦāĻŋ
āĻ¸ā§āĻ•ā§ā§°ā§€āύāĻļā§āĻŦāϟ⧰ āĻĒā§āϰāϤāĻŋāĻšā§āĻ›āĻŦāĻŋ
āĻ¸ā§āĻ•ā§ā§°ā§€āύāĻļā§āĻŦāϟ⧰ āĻĒā§āϰāϤāĻŋāĻšā§āĻ›āĻŦāĻŋ
āĻ¸ā§āĻ•ā§ā§°ā§€āύāĻļā§āĻŦāϟ⧰ āĻĒā§āϰāϤāĻŋāĻšā§āĻ›āĻŦāĻŋ
āĻ¸ā§āĻ•ā§ā§°ā§€āύāĻļā§āĻŦāϟ⧰ āĻĒā§āϰāϤāĻŋāĻšā§āĻ›āĻŦāĻŋ
āĻ¸ā§āĻ•ā§ā§°ā§€āύāĻļā§āĻŦāϟ⧰ āĻĒā§āϰāϤāĻŋāĻšā§āĻ›āĻŦāĻŋ
āĻ¸ā§āĻ•ā§ā§°ā§€āύāĻļā§āĻŦāϟ⧰ āĻĒā§āϰāϤāĻŋāĻšā§āĻ›āĻŦāĻŋ
āĻ¸ā§āĻ•ā§ā§°ā§€āύāĻļā§āĻŦāϟ⧰ āĻĒā§āϰāϤāĻŋāĻšā§āĻ›āĻŦāĻŋ
āĻ¸ā§āĻ•ā§ā§°ā§€āύāĻļā§āĻŦāϟ⧰ āĻĒā§āϰāϤāĻŋāĻšā§āĻ›āĻŦāĻŋ
āĻ¸ā§āĻ•ā§ā§°ā§€āύāĻļā§āĻŦāϟ⧰ āĻĒā§āϰāϤāĻŋāĻšā§āĻ›āĻŦāĻŋ
āĻ¸ā§āĻ•ā§ā§°ā§€āύāĻļā§āĻŦāϟ⧰ āĻĒā§āϰāϤāĻŋāĻšā§āĻ›āĻŦāĻŋ
āĻ¸ā§āĻ•ā§ā§°ā§€āύāĻļā§āĻŦāϟ⧰ āĻĒā§āϰāϤāĻŋāĻšā§āĻ›āĻŦāĻŋ

āĻāχ āĻāĻĒā§â€ŒāĻŸā§‹ā§° āĻŦāĻŋāĻˇā§Ÿā§‡

X-Prolog is a lightweight Prolog system intended to facilitate programming in Prolog on Android. The app runs Prolog programs in a text view, web view or as a bound service to a client app. A sample client is available at https://github.com/xprolog/sample-client.

Note that Google Play restricts the use of all-file-access permission in apps targeting Android 11 or later. To install X-Prolog with all-file-access permission, refer to https://github.com/xprolog/xp/releases.

got tool? The app depends on user-defined tools for editing and building projects. The tools are written in Prolog and are visible on devices with developer options. The app and tools exchange data through transfer variables and formatted output. This release includes trivial tools intended to demonstrate the app's tooling feature.

The app defines extension points at which transfer variables are available (to tools) and formatted output (from tools) is recognized. A tool may be configured to contribute to one or more extension points by specifying a context term.

A context term is read-term of the form context(Name, FileTypes, Priority) , where Name is the name of an extension point, FileTypes is a list of acceptable file types and Priority is an integer not less than zero, the meaning of which varies depending on the extension point.

This release defines three extension points: build, edit and reconcile, which allow tools to contribute to, respectively, building projects, editing source files and reconciling source models.

To build a project, open a file in the top directory of the project and click Build. To export the project into a runnable object file on the local file system, click Export. To run the object file, click Run.

A file is considered source-file if there exists one or more tools that build the file, possibly transforming it into another source file. This release includes a single build tool, Compile, which translates a Prolog source file (.pl) into a quick-load file (.ql).

Known issues include occurs check, logical update view, attributed variables among others.
āφāĻĒāĻĄā§‡â€™āϟ āϕ⧰āĻž āϤāĻžā§°āĻŋāĻ–
⧍ā§Ļ-ā§§ā§§-⧍ā§Ļ⧍⧍

āĻĄā§‡āϟāĻž āϏ⧁⧰āĻ•ā§āώāĻž

āĻŦāĻŋāĻ•āĻžāĻļāĻ•ā§°ā§āϤāĻžāϏāĻ•āϞ⧇ āφāĻĒā§‹āύāĻžā§° āĻĄā§‡āϟāĻž āϕ⧇āύ⧇āĻ•ā§ˆ āϏāĻ‚āĻ—ā§ā§°āĻš āφ⧰⧁ āĻļā§āĻŦā§‡ā§ŸāĻžā§° āϕ⧰⧇ āĻ¸ā§‡ā§ŸāĻž āĻŦ⧁āϜāĻŋ āĻĒā§‹ā§ąāĻžā§° āϜ⧰āĻŋ⧟āϤ⧇ āϏ⧁⧰āĻ•ā§āώāĻž āφ⧰āĻŽā§āĻ­ āĻšā§ŸāĨ¤ āĻĄā§‡āϟāĻžā§° āĻ—ā§‹āĻĒāĻ¨ā§€ā§ŸāϤāĻž āφ⧰⧁ āϏ⧁⧰āĻ•ā§āώāĻž āĻĒā§ā§°āĻŖāĻžāϞ⧀ āφāĻĒā§‹āύāĻžā§° āĻŦā§āĻ¯ā§ąāĻšāĻžā§°, āĻ…āĻžā§āϚāϞ āφ⧰⧁ āĻŦāϝāĻŧāϏ⧰ āĻ“āĻĒā§°āϤ āĻ­āĻŋāĻ¤ā§āϤāĻŋ āϕ⧰āĻŋ āĻ­āĻŋāĻ¨ā§āύ āĻšâ€™āĻŦ āĻĒāĻžā§°ā§‡āĨ¤ āĻŦāĻŋāĻ•āĻžāĻļāĻ•ā§°ā§āϤāĻžāĻ—ā§°āĻžāĻ•ā§€ā§Ÿā§‡ āĻāχ āϤāĻĨā§āϝāĻ–āĻŋāύāĻŋ āĻĒā§ā§°āĻĻāĻžāύ āϕ⧰āĻŋāϛ⧇ āφ⧰⧁ āϏāĻŽā§Ÿā§° āϞāϗ⧇ āϞāϗ⧇ āĻā§ŸāĻž āφāĻĒāĻĄā§‡â€™āϟ āϕ⧰āĻŋāĻŦ āĻĒāĻžā§°ā§‡āĨ¤
āϤ⧃āĻ¤ā§€ā§Ÿ āĻĒāĻ•ā§āώ⧰ āϏ⧈āϤ⧇ āϕ⧋āύ⧋ āĻĄā§‡āϟāĻž āĻļā§āĻŦ⧇āϝāĻŧāĻžā§° āϕ⧰āĻž āύāĻžāχ
āĻŦāĻŋāĻ•āĻžāĻļāĻ•ā§°ā§āϤāĻžāχ āĻĄā§‡āϟāĻž āĻļā§āĻŦā§‡ā§ŸāĻžā§° āϕ⧰āĻžā§° āĻŦāĻŋāĻˇā§Ÿā§‡ āϕ⧇āύ⧇āĻ•ā§ˆ āĻ˜ā§‹āώāĻŖāĻž āϕ⧰⧇ āϏ⧇āχ āĻŦāĻŋāĻˇā§Ÿā§‡ āĻ…āϧāĻŋāĻ• āϜāĻžāύāĻ•
āϕ⧋āύ⧋ āĻĄā§‡āϟāĻž āϏāĻ‚āĻ—ā§ā§°āĻš āϕ⧰āĻž āĻšā§‹ā§ąāĻž āύāĻžāχ
āĻŦāĻŋāĻ•āĻžāĻļāĻ•ā§°ā§āϤāĻžāχ āĻĄā§‡āϟāĻž āϏāĻ‚āĻ—ā§ā§°āĻš āϕ⧰āĻžā§° āĻŦāĻŋāĻˇā§Ÿā§‡ āϕ⧇āύ⧇āĻ•ā§ˆ āĻ˜ā§‹āώāĻŖāĻž āϕ⧰⧇ āϏ⧇āχ āĻŦāĻŋāĻˇā§Ÿā§‡ āĻ…āϧāĻŋāĻ• āϜāĻžāύāĻ•

āĻŽā§‚āĻ˛ā§āϝāĻžāĻ‚āĻ•āύ āφ⧰⧁ āĻĒā§°ā§āϝāĻžāϞ⧋āϚāύāĻžāϏāĻŽā§‚āĻš

ā§Š.ā§Ē
ā§§ā§§ā§Ŧ āϟāĻž āĻĒā§°ā§āϝāĻžāϞ⧋āϚāύāĻž

āύāϤ⧁āύ āĻ•āĻŋ āφāϛ⧇

Initial release

āĻāĻĒā§° āϏāĻŽā§°ā§āĻĨāύ

āĻĢ'āύ āύāĻŽā§āĻŦā§°
+18578698701
āĻŦāĻŋāĻ•āĻžāĻļāĻ•ā§°ā§āϤāĻžā§° āĻŦāĻŋāĻˇā§Ÿā§‡
Atef Suleiman
info.xprolog@gmail.com
United States
undefined