The search result changed since you submitted your search request. Documents might be displayed in a different sort order.
  • search hit 42 of 55
Back to Result List

Efficiency of difference-list programming

  • The difference-list technique is described in literature as effective method for extending lists to the right without using calls of append/3. There exist some proposals for automatic transformation of list programs into differencelist programs. However, we are interested in construction of difference-list programs by the programmer, avoiding the need of a transformation step. In [GG09] it was demonstrated, how left-recursive procedures with a dangling call of append/3 can be transformed into right-recursion using the unfolding technique. For simplification of writing difference-list programs using a new cons/2 procedure was introduced. In the present paper, we investigate how efficieny is influenced using cons/2. We measure the efficiency of procedures using accumulator technique, cons/2, DCG’s, and difference lists and compute the resulting speedup in respect to the simple procedure definition using append/3. Four Prolog systems were investigated and we found different behaviour concerning the speedup by difference lists. A resultThe difference-list technique is described in literature as effective method for extending lists to the right without using calls of append/3. There exist some proposals for automatic transformation of list programs into differencelist programs. However, we are interested in construction of difference-list programs by the programmer, avoiding the need of a transformation step. In [GG09] it was demonstrated, how left-recursive procedures with a dangling call of append/3 can be transformed into right-recursion using the unfolding technique. For simplification of writing difference-list programs using a new cons/2 procedure was introduced. In the present paper, we investigate how efficieny is influenced using cons/2. We measure the efficiency of procedures using accumulator technique, cons/2, DCG’s, and difference lists and compute the resulting speedup in respect to the simple procedure definition using append/3. Four Prolog systems were investigated and we found different behaviour concerning the speedup by difference lists. A result of our investigations is, that an often advice given in the literature for avoiding calls append/3 could not be confirmed in this strong formulation.show moreshow less

Download full text files

Export metadata

Additional Services

Search Google Scholar Statistics
Metadaten
Author details:Ulrich Geske, Hans-Joachim Goltz
URN:urn:nbn:de:kobv:517-opus-41563
Publication type:Conference Proceeding
Language:English
Publication year:2010
Publishing institution:Universität Potsdam
Contributing corporation:Gesellschaft für Logische Programmierung e.V.
Release date:2010/03/04
Source:Proceedings of the 23rd Workshop on (Constraint) Logic Programming 2009 / Geske, Ulrich; Wolf, Armin (Hrsg.). - Potsdam : Universitätsverlag, 2010. - S. 177 - 186
Organizational units:Mathematisch-Naturwissenschaftliche Fakultät / Institut für Informatik und Computational Science
DDC classification:0 Informatik, Informationswissenschaft, allgemeine Werke / 00 Informatik, Wissen, Systeme / 004 Datenverarbeitung; Informatik
Collection(s):Universität Potsdam / Tagungsbände/Proceedings (nicht fortlaufend) / Proceedings of the 23rd Workshop on (Constraint) Logic Programming 2009 / Practice of Logic Programming
License (German):License LogoKeine öffentliche Lizenz: Unter Urheberrechtsschutz
Accept ✔
This website uses technically necessary session cookies. By continuing to use the website, you agree to this. You can find our privacy policy here.