Levente Hunyadi

Prolog alkalmazások illesztése webes környezethez

Összefoglaló. A Prolog logikai nyelv kifejezőereje lehetővé teszi általános programozási nyelvként történő alkalmazását. Webfelülettel rendelkező alkalmazások fejlesztése esetén azonban jelentős hátrány a nyelv konzol-orientáltsága, kérdés-válasz jellege. Bár a kérdések és válaszok sorozata HTTP kérések és válaszok sorozatába ágyazható, ez a megközelítés, ugyan egyszerű esetekben alkalmazható, ám nem illeszkedik a webes felhasználói felület-modellbe.

A dolgozat előbb áttekinti a webprogramozást elősegítő, rendelkezésre álló Prolog nyelvi kiterjesztéseket, különös tekintettel a PiLLoW könyvtárra, illetve az idegen nyelvekhez kapcsoló illesztési felületekre. Ezek alapján felvázol egy kétszintű rendszerarchitektúrát, amely összetett alkalmazások kialakítását teszi lehetővé. Az architektúra egyrészt támogatást nyújt a HTTP környezet átlátszó, a nyelvbe beépülő elérésére, a kérések közti állapotmegőrzésre, az egyidejű kérések hatékony kiszolgálására, másrészt egy bővíthető sablontechnológiát jelent, amely kifejezésnyelvével és strukturált JSP-szerű szerkezetével webhelyek olyan kialakítása felé vezérel, amelyben a megjelenítés és üzleti logika elválik. Cél, hogy ezáltal lehetővé váljon webfelülettel rendelkező alkalmazás pusztán Prolog nyelven történő megvalósítása, és ne kelljen azt egy webtámogatással bíró rendszerarchitektúrába ágyazni.

A HTTP protokollt és az alacsonyszintű kommunikációt a webkiszolgálóhoz kapcsolódó Prolog Web Container rejti el a programozó elől. Környezetet biztosít felhasználói program futtatására, felel a kérések lebonyolításáért, a kérések közti viszony megőrzéséért és a kérések okozta terhelés elosztásáért, hátteret nyújtva a Prolog Server Pages technológiának. A Prolog Server Pages egyszerű, ám kiterjeszthető struktúrális mechanizmus teszi lehetővé, hogy a megjelenítés és az üzleti logika egyértelműen szétválasztható legyen.

A dolgozat, felhasználva annak többszálú lehetőségeit és beépített alacsonyszintű külső adat-elérési képességeit, egy SWI-Prolog rendszerre írt referenciaimplementációval, illetve ennek segítségével megvalósított példaalkalmazással zárul, amely megvalósítja és bemutatja a felvázolt architektúrát.

Megjelent: A 2005. évi kari Tudományos Diákköri Konferencián dolgozatom, a Prolog Server Pages Extensible Architecture: Providing web interface for Prolog applications (magyar címe: Prolog alkalmazások illesztése webes környezethez ) a Szoftver szekció I. díját nyerte. Angol nyelvű PDF Előadásdiák PDF

Elérhetőség. A projekt oldala elérhető a SourceForge webhelyén.

This website uses cookies to manage authentication, navigation, and other functions. By using our website, you agree that we can place these types of cookies on your device.

View e-Privacy Directive Documents

You have declined cookies. This decision can be reversed.

You have allowed cookies to be placed on your computer. This decision can be reversed.