Algebraická logika Funkční programovací jazyk - Algebraic Logic Functional programming language - Wikipedia
Paradigma | multi-paradigma: logika, funkční |
---|---|
webová stránka | Získání a instalace ALF |
Algebraická logika Funkční programovací jazyk, také známý jako ALF, je programovací jazyk který kombinuje funkční a logické programování techniky. Jeho základem je Horn klauzule logika s rovností, která se skládá z predikátů a Hornových klauzulí pro logické programování, a funkcí a rovnic pro funkční programování.
ALF byl navržen tak, aby byla skutečnou integrací obou programovacích paradigmat, a tak lze v cílovém literálu použít jakýkoli funkční výraz a v podmínkách rovnic mohou nastat libovolné predikáty. ALF operační sémantika je založen na pravidle řešení k řešení literálů a zúžení k vyhodnocení funkčních výrazů. Aby se snížil počet možných kroků zúžení, používá se nejvnitřnější základní strategie zúžení, která, jak se tvrdí, může být účinně implementována.[Citace je zapotřebí ] Termíny jsou zjednodušeny přepsáním před použitím kroku zúžení a rovnice jsou odmítnuty, pokud mají obě strany nahoře různé konstruktory. Přepisování a odmítnutí má vést k velkému zmenšení vyhledávacího stromu a vytvoření operativní sémantiky, která je efektivnější než Prolog strategie řešení problémů. Podobně jako Prolog, ALF používá strategii zpětného sledování odpovídající hloubkovému prvnímu vyhledávání v derivačním stromu.
Systém ALF byl navržen tak, aby efektivně implementoval kombinaci rozlišení, zúžení, přepsání a odmítnutí. Programy ALF jsou kompilovány do pokynů abstraktního stroje. Abstraktní stroj je založen na Warrenův abstraktní stroj (WAM) s několika rozšířeními pro implementaci zúžení a přepsání. V aktuálních ALF implementačních programech tohoto abstraktního stroje jsou prováděny emulátorem zapsaným v C.
V Univerzita Carnegie Mellon Umělá inteligence Úložiště,[1] ALF je zahrnut jako programovací jazyk AI, zejména jako implementace funkčního / logického programovacího jazyka Prolog.[2] Uživatelská příručka[3] popisující jazyk a použití systému je k dispozici. Systém ALF[4] běží pod Unix a je k dispozici pod vlastní proprietární softwarová licence který uděluje právo používat pro „účely hodnocení, výzkumu a výuky“, ale nikoli pro komerční nebo vojenské účely.[5]
Reference
- ^ „Úložiště umělé inteligence CMU“. Úložiště umělé inteligence CMU. Univerzita Carnegie Mellon. 1995-02-13. Archivováno z původního dne 23. června 2007. Citováno 2007-06-22.
- ^ "ALF: Algebraic Logic Functional Programming Language". Úložiště umělé inteligence CMU. Univerzita Carnegie Mellon. 1995-02-13. Archivováno z původního dne 10. května 2007. Citováno 2007-06-22.
- ^ Hanus, Michael; Andreas Schwab (1995-02-13). „Uživatelská příručka ALF“ (PDF). Uživatelská příručka ALF. Institut für Informatik, Christian-Albrechts-Universität zu Kiel. Archivováno (PDF) z původního dne 11. července 2007. Citováno 2007-06-22.
- ^ Hanus, Michael. „Systém ALF“. Systém ALF. Institut für Informatik, Christian-Albrechts-Universität zu Kiel. Archivováno z původního dne 25. června 2007. Citováno 2007-06-22.
- ^ Hanus, Michael. „Licenční smlouva ALF“. Systém ALF. Institut für Informatik, Christian-Albrechts-Universität zu Kiel. Archivováno z původního dne 2. prosince 2015. Citováno 2020-03-06.
externí odkazy
- Publikace Michaela Hanuse, včetně mnoha článků týkajících se designu a teorie ALF
- Informace o získání a instalaci systému ALF
Tento počítačová věda článek je a pahýl. Wikipedii můžete pomoci pomocí rozšiřovat to. |