X-Prolog er et letvægts Prolog-system beregnet til at lette programmering i Prolog på Android. Appen kører Prolog-programmer i en tekstvisning, webvisning eller som en bundet service til en klientapp. En eksempelklient er tilgængelig på https://github.com/xprolog/sample-client.
Bemærk, at Google Play begrænser brugen af adgangstilladelse til alle filer i apps, der er målrettet mod Android 11 eller nyere. Se https://github.com/xprolog/xp/releases for at installere X-Prolog med all-file-adgang tilladelse.
har du værktøj? Appen afhænger af brugerdefinerede værktøjer til redigering og opbygning af projekter. Værktøjerne er skrevet i Prolog og er synlige på enheder med udviklermuligheder. Appen og værktøjerne udveksler data gennem overførselsvariabler og formateret output. Denne udgivelse indeholder trivielle værktøjer beregnet til at demonstrere appens værktøjsfunktion.
Appen definerer udvidelsespunkter, hvor overførselsvariabler er tilgængelige (til værktøjer) og formateret output (fra værktøjer) genkendes. Et værktøj kan konfigureres til at bidrage til et eller flere udvidelsespunkter ved at angive et kontekstudtryk.
En kontekstterm er læseterm af formen context(Name, FileTypes, Priority) , hvor Name er navnet på et udvidelsespunkt, FileTypes er en liste over acceptable filtyper, og Prioritet er et heltal, der ikke er mindre end nul, hvis betydning varierer afhængigt af udvidelsespunktet.
Denne udgivelse definerer tre udvidelsespunkter: byg, rediger og afstem, som tillader værktøjer at bidrage til henholdsvis byggeprojekter, redigering af kildefiler og afstemning af kildemodeller.
For at bygge et projekt skal du åbne en fil i projektets øverste mappe og klikke på Byg. For at eksportere projektet til en kørselsbar objektfil på det lokale filsystem skal du klikke på Eksporter. Klik på Kør for at køre objektfilen.
En fil betragtes som en kildefil, hvis der findes et eller flere værktøjer, der bygger filen, og muligvis transformerer den til en anden kildefil. Denne udgivelse inkluderer et enkelt byggeværktøj, Compile, som oversætter en Prolog-kildefil (.pl) til en hurtigindlæsningsfil (.ql).
Kendte problemer omfatter opstår kontrol, logisk opdateringsvisning, tilskrevne variabler blandt andre.