Home

About

Advanced Search

Browse by Discipline

Scientific Societies

E-print Alerts

Add E-prints

E-print Network
FAQHELPSITE MAPCONTACT US


  Advanced Search  

 
An Automatic Composition Algorithm for Functional Logic Programs
 

Summary: An Automatic Composition Algorithm for
Functional Logic Programs
Mar'ia Alpuente 1 , Moreno Falaschi 2 , Gin'es Moreno 3 , and Germ'an Vidal 1
1 DSIC, UPV, Camino de Vera s/n, 46022 Valencia, Spain. alpuente@dsic.upv.es
2 Dip. Mat. e Informatica, U. Udine, 33100 Udine, Italy. falaschi@dimi.uniud.it
3 Dep. Inform'atica, UCLM, 02071 Albacete, Spain. gmoreno@info­ab.uclm.es
Abstract. Functional logic languages with a complete operational se­
mantics are based on narrowing, which combines the instantiation of
variables with the reduction of expressions. In this paper, we investigate
the relationship between partial evaluation and more general transforma­
tions based on folding/unfolding. First, we show that the transformations
obtained by partial evaluators can be also achieved by folding/unfolding
using a particular kind of eurekas which can be mechanically attained.
Then, we propose an algorithm (based on folding/unfolding) which starts
with the automatic eureka generation and is able to perform program
composition, i.e., it is able to produce a single function definition for some
nested functions of the original program. This avoids the construction of
intermediate data structures that are produced by the inner function and
consumed as inputs by the outer function. As opposed to both partial
evaluation and (general) fold/unfold transformations, strong correctness

  

Source: Alpuente, María - Departamento de Sistemas Informáticos y Computación, Universitat Politècnica de València
Vidal, Germán - Departamento de Sistemas Informáticos y Computación, Universitat Politècnica de València

 

Collections: Computer Technologies and Information Sciences