Compiling Evaluable Functions in the Godel Programming Language

We present an extension of the Godel logic programming language code generator which compiles user-defined functions. These functions may be used as arguments in predicate or goal clauses. They are defined in extended Godel as rewrite rules. A translation scheme is introduced to convert function def...

Full description

Bibliographic Details
Main Author: Shapiro, David
Format: Others
Published: PDXScholar 1996
Subjects:
Online Access:https://pdxscholar.library.pdx.edu/open_access_etds/5101
https://pdxscholar.library.pdx.edu/cgi/viewcontent.cgi?article=6173&context=open_access_etds
id ndltd-pdx.edu-oai-pdxscholar.library.pdx.edu-open_access_etds-6173
record_format oai_dc
spelling ndltd-pdx.edu-oai-pdxscholar.library.pdx.edu-open_access_etds-61732019-10-26T05:11:58Z Compiling Evaluable Functions in the Godel Programming Language Shapiro, David We present an extension of the Godel logic programming language code generator which compiles user-defined functions. These functions may be used as arguments in predicate or goal clauses. They are defined in extended Godel as rewrite rules. A translation scheme is introduced to convert function definitions into predicate clauses for compilation. This translation scheme and the compilation of functional arguments both employ leftmost-innermost narrowing. As function declarations are indistinguishable from constructor declarations, a function detection method is implemented. The ultimate goal of this research is the implementation of extended Godel using needed narrowing. The work presented here is an intermediate step in creating a functional-logic language which expands the expressiveness of logic programming and streamlines its execution. 1996-01-30T08:00:00Z text application/pdf https://pdxscholar.library.pdx.edu/open_access_etds/5101 https://pdxscholar.library.pdx.edu/cgi/viewcontent.cgi?article=6173&context=open_access_etds Dissertations and Theses PDXScholar Gèodel (Computer program language) Computer Sciences Programming Languages and Compilers
collection NDLTD
format Others
sources NDLTD
topic Gèodel (Computer program language)
Computer Sciences
Programming Languages and Compilers
spellingShingle Gèodel (Computer program language)
Computer Sciences
Programming Languages and Compilers
Shapiro, David
Compiling Evaluable Functions in the Godel Programming Language
description We present an extension of the Godel logic programming language code generator which compiles user-defined functions. These functions may be used as arguments in predicate or goal clauses. They are defined in extended Godel as rewrite rules. A translation scheme is introduced to convert function definitions into predicate clauses for compilation. This translation scheme and the compilation of functional arguments both employ leftmost-innermost narrowing. As function declarations are indistinguishable from constructor declarations, a function detection method is implemented. The ultimate goal of this research is the implementation of extended Godel using needed narrowing. The work presented here is an intermediate step in creating a functional-logic language which expands the expressiveness of logic programming and streamlines its execution.
author Shapiro, David
author_facet Shapiro, David
author_sort Shapiro, David
title Compiling Evaluable Functions in the Godel Programming Language
title_short Compiling Evaluable Functions in the Godel Programming Language
title_full Compiling Evaluable Functions in the Godel Programming Language
title_fullStr Compiling Evaluable Functions in the Godel Programming Language
title_full_unstemmed Compiling Evaluable Functions in the Godel Programming Language
title_sort compiling evaluable functions in the godel programming language
publisher PDXScholar
publishDate 1996
url https://pdxscholar.library.pdx.edu/open_access_etds/5101
https://pdxscholar.library.pdx.edu/cgi/viewcontent.cgi?article=6173&context=open_access_etds
work_keys_str_mv AT shapirodavid compilingevaluablefunctionsinthegodelprogramminglanguage
_version_ 1719278756713988096