Schloss Dagstuhl - Leibniz-Zentrum für Informatik GmbH Schloss Dagstuhl - Leibniz-Zentrum für Informatik GmbH scholarly article en Rodrigues, Nuno Miguel Feixa; Barbosa, Luís S. License
when quoting this document, please refer to the following
URN: urn:nbn:de:0030-drops-4845


Slicing Functional Programs by Calculation



Program slicing is a well known family of techniques used to identify code fragments which depend on or are depended upon specific program entities. They are particularly useful in the areas of reverse engineering, program understanding, testing and software maintenance. Most slicing methods, usually targeting either the imperative or the object oriented paradigms, are based on some sort of graph structure representing program dependencies. Slicing techniques amount, therefore, to (sophisticated) graph transversal algorithms.
This paper proposes a completely different approach to the slicing problem for functional programs. Instead of extracting program information to build an underlying dependencies’ structure, we resort to standard program calculation strategies, based on the so-called Bird-Meertens formalism. The slicing criterion is specified either as a projection or a hiding function which, once composed with the original program, leads to the identification of the
intended slice. Going through a number of examples, the paper suggests this approach may be an interesting, even if not completely general alternative to slicing functional programs.

BibTeX - Entry

  author =	{Rodrigues, Nuno Miguel Feixa and Barbosa, Lu{\'\i}s S.},
  title =	{{Slicing Functional Programs by Calculation}},
  booktitle =	{Beyond Program Slicing},
  pages =	{1--12},
  series =	{Dagstuhl Seminar Proceedings (DagSemProc)},
  ISSN =	{1862-4405},
  year =	{2006},
  volume =	{5451},
  editor =	{David W. Binkley and Mark Harman and Jens Krinke},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{},
  URN =		{urn:nbn:de:0030-drops-4845},
  doi =		{10.4230/DagSemProc.05451.8},
  annote =	{Keywords: Program Slicing, Algebra of Programming, Functional Programming}

Keywords: Program Slicing, Algebra of Programming, Functional Programming
Seminar: 05451 - Beyond Program Slicing
Issue date: 2006
Date of publication: 07.07.2006

DROPS-Home | Fulltext Search | Imprint | Privacy Published by LZI