Title of article :
Generalized structured programs and loop trees
Author/Authors :
Ward Douglas Maurer، نويسنده ,
Issue Information :
دوهفته نامه با شماره پیاپی سال 2007
Pages :
24
From page :
223
To page :
246
Abstract :
Any directed graph, even a flow graph representing “spaghetti code”, is shown here to have at least one loop tree, which is a structure of loops within loops in which no loops overlap. The nodes of the graph may be rearranged in such a way that, with respect to their new order, every edge proceeds in the forward direction except for the loopbacks. Here a loopback goes from somewhere in a loop image to the head of image. We refer to such a rearrangement as a generalized structured program, in which forward goto statements remain unrestricted. Like a min-heap or a max-heap, a loop tree has an array representation, without pointers; it may be constructed in time no worse than image for any program written in this fashion. A scalable version of this construction uses a label graph, whose only nodes are the labels of the given program. A graph has a unique loop tree if and only if it is reducible.
Keywords :
Loop trees , Overlapping loops , Reducible graphs , Strongly connected components , Generalized structured program , GSP
Journal title :
Science of Computer Programming
Serial Year :
2007
Journal title :
Science of Computer Programming
Record number :
1079972
Link To Document :
بازگشت