TU Darmstadt / ULB / TUbiblio

Compiling Prolog to Idiomatic Java

Eichberg, Michael
Hrsg.: Gallagher, John ; Gelfond, Michael (2011)
Compiling Prolog to Idiomatic Java.
Technical Communications of the 27th International Conference on Logic Programming (ICLP'11). Lexington, KY, USA
Konferenzveröffentlichung, Bibliographie

Kurzbeschreibung (Abstract)

Today, Prolog is often used to solve well-defined, domain-specific problems that are part of larger applications. In such cases, a tight integration of the Prolog program and the rest of the application, which is commonly written in a different language, is necessary. One common approach is to compile the Prolog code to (native) code in the target language. In this case, the effort necessary to build, test and deploy the final application is reduced. However, most of the approaches that achieve reasonable performance compile Prolog to object-oriented code that relies on some kind of virtual machine (VM). These VMs are libraries implemented in the target language and implement Prolog's execution semantics. This adds a significant layer to the object-oriented program and results in code that does not look and feel native to developers of object-oriented programs. Further, if Prolog's execution semantics is implemented as a library the potential of modern runtime environments for object-oriented programs, such as the Java Virtual Machine, to effectively optimize the program is more limited. In this paper, we report on our approach to compile Prolog to high-level, idiomatic object-oriented Java code. The generated Java code closely resembles code written by Java developers and is effectively optimized by the Java Virtual Machine.

Typ des Eintrags: Konferenzveröffentlichung
Erschienen: 2011
Herausgeber: Gallagher, John ; Gelfond, Michael
Autor(en): Eichberg, Michael
Art des Eintrags: Bibliographie
Titel: Compiling Prolog to Idiomatic Java
Sprache: Englisch
Publikationsjahr: 2011
Ort: Dagstuhl, Germany
Verlag: Schloss Dagstuhl--Leibniz-Zentrum fuer Informatik
Reihe: Leibniz International Proceedings in Informatics (LIPIcs)
Band einer Reihe: 11
Veranstaltungstitel: Technical Communications of the 27th International Conference on Logic Programming (ICLP'11)
Veranstaltungsort: Lexington, KY, USA
URL / URN: http://drops.dagstuhl.de/opus/volltexte/2011/3176
Zugehörige Links:
Kurzbeschreibung (Abstract):

Today, Prolog is often used to solve well-defined, domain-specific problems that are part of larger applications. In such cases, a tight integration of the Prolog program and the rest of the application, which is commonly written in a different language, is necessary. One common approach is to compile the Prolog code to (native) code in the target language. In this case, the effort necessary to build, test and deploy the final application is reduced. However, most of the approaches that achieve reasonable performance compile Prolog to object-oriented code that relies on some kind of virtual machine (VM). These VMs are libraries implemented in the target language and implement Prolog's execution semantics. This adds a significant layer to the object-oriented program and results in code that does not look and feel native to developers of object-oriented programs. Further, if Prolog's execution semantics is implemented as a library the potential of modern runtime environments for object-oriented programs, such as the Java Virtual Machine, to effectively optimize the program is more limited. In this paper, we report on our approach to compile Prolog to high-level, idiomatic object-oriented Java code. The generated Java code closely resembles code written by Java developers and is effectively optimized by the Java Virtual Machine.

Fachbereich(e)/-gebiet(e): 20 Fachbereich Informatik > Softwaretechnik
20 Fachbereich Informatik
Hinterlegungsdatum: 28 Jul 2011 12:55
Letzte Änderung: 05 Mär 2013 09:51
PPN:
Zugehörige Links:
Export:
Suche nach Titel in: TUfind oder in Google
Frage zum Eintrag Frage zum Eintrag

Optionen (nur für Redakteure)
Redaktionelle Details anzeigen Redaktionelle Details anzeigen