Measuring the Effectiveness of Partial Evaluation in Functional Logic Languages

نویسندگان

  • Elvira Albert
  • Sergio Antoy
  • Germán Vidal
چکیده

We introduce a framework for assessing the effectiveness of partial evaluators in functional logic languages. Our framework is based on properties of the rewrite system that models a functional logic program. Consequently, our assessment is independent of any specific language implementation or computing environment. We define several criteria for measuring the cost of a computation: number of steps, number of function applications, and pattern matching effort. Most importantly, we express the cost of each criterion by means of recurrence equations over algebraic data types, which can be automatically inferred from the partial evaluation process itself. In some cases, the equations can be solved by transforming their arguments from arbitrary data types to natural numbers. In other cases, it is possible to estimate the improvement of a partial evaluation by analyzing the associated cost recurrence equations.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Formal Approach to Reasoning about the Effectiveness of Partial Evaluation

We introduce a framework for assessing the effectiveness of partial evaluators in functional logic languages. Our framework is based on properties of the rewrite system that models a functional logic program. Consequently, our assessment is independent of any specific language implementation or computing environment. We define several criteria for measuring the cost of a computation: number of ...

متن کامل

Measuring the E ectiveness of PartialEvaluation in Functional Logic

We introduce a framework for assessing the eeectiveness of partial evaluators in functional logic languages. Our framework is based on properties of the rewrite system that models a functional logic program. Consequently, our assessment is independent of any speciic language implementation or computing environment. We deene several criteria for measuring the cost of a computation: number of ste...

متن کامل

Narrowing-Driven Partial Evaluation of Functional Logic Programs

Languages that integrate functional and logic programming with a complete operational semantics are based on narrowing, a unification-based goal-solving mechanism which subsumes the reduction principle of functional languages and the resolution principle of logic languages. Formal methods of transformation of functional logic programs can be based on this well-established operational semantics....

متن کامل

Specialization of functional logic programs based on needed narrowing

Many functional logic languages are based on narrowing, a unification-based goal-solving mechanism which subsumes the reduction mechanism of functional languages and the resolution principle of logic languages. Needed narrowing is an optimal evaluation strategy which constitutes the basis of modern (narrowing-based) lazy functional logic languages. In this work, we present the fundamentals of p...

متن کامل

Partial Evaluation of Functional Logic Programs in Rewriting-based Languages

The aim of this work is to describe a procedure for the partial evaluation of functional logic languages based on rewriting. In this work, we will use the Escher language as an example of a (concurrent) functional logic language which has rewriting as its computational mechanism. Partial evaluation is a program transformation technique which, by performing some computation and abstraction at co...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2000