Logic programming implementation of functional programming languages
Aiqin Pan, B.R. Bryant
Abstract
Aiqin Pan, B.R. Bryant
Abstract
The logic programming language Prolog is advocated as an implementation language for functional programming languages. Lambda reduction machines using the evaluation strategies of strict and lazy evaluation, fully lazy evaluation using graph reduction, and compilation into supercombinators are all defined in Prolog using techniques unique to logic programming. It is also shown how Prolog may be used to efficiently implement polymorphic type checking.>
OpenAlex reports 2 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
The logic programming language Prolog is advocated as an implementation language for functional programming languages. Lambda reduction machines using the evaluation strategies of strict and lazy evaluation, fully lazy evaluation using graph reduction, and compilation into supercombinators are all defined in Prolog using techniques unique to logic programming. It is also shown how Prolog may be used to efficiently implement polymorphic type checking.>
Key concepts: Prolog, Programming language, Logic programming, Computer science, Fifth-generation programming language, Functional logic programming, Declarative programming, Graph reduction