EECS MIT EECS EECS
     
EECS

MIT EECS Event


Wednesday, November 4, 2009
CSAIL Seminar Fine Slicing for Program Transformation   . . . Abstract
Yishai Feldman, IBM Haifa Research Lab
    10:00 AM, Stata Center room 32-261
CSAIL Seminar
-   Host: Howard Shrobe, CSAIL
-   Contact: Howard Shrobe, 617 253-7877, hes@csail.mit.edu

Abstract

Program slicing has many applications, including program understanding and transformation. There are many types of slices that can be computed; however, only full backward slices have an executable semantics, and are therefore the only form that can be used in behavior-preserving transformations. Full backward slices are often too large to be useful in transformation, as they include all preceding computations, some of which should not participate in certain transformations.

We introduce fine slicing, a method for computing program slices that can be bounded by the removal of some data and control dependences. Fine slices are executable and extractable from their surrounding code. As such, they enable the precise and flexible extraction of reusable computations. Both backward and forward fine slices are executable.

Fine slices can also be used to compute co-slices, the part of the program that should be left behind when extracting a fine slice. A new fine-slice extraction algorithm can separate a fine slice from its surrounding code, replacing it with an appropriate call. We show several examples of how fine-slice extraction can be used to generalize the Extract Method refactoring for non-contiguous code.

Joint work with Aharon Abadi and Ran Ettinger, IBM Haifa Research Lab


EECS Home Page | Site Map | Search | Archive | About this page | Comments and inquiries