Structured programming has clarified the structure of programs "in the small": It has unraveled the control flow of programs by abandoning "go to" jumps and by allowing only certain standardized control structures (if-then-else, loops, etc.) that are "entered at the top" and "left at the bottom": Except for loop structures, the control flow is directed from top to bottom now.
Spaghetti-like program structures in the small have been overcome in this way. |
|
Image: http://www.freeimages.co.uk/ |
Some people say: Object-oriented programming (in combination with structured programming in the above sense) has turned spaghetti programming into tortellini programming: Many small chunks of code (= methods of classes), but still poor program structure "in the large". |
Click to enlarge |
Lava attempts to support what could be called a fractal program structure: A deeply nested tree structure consisting of a moderate number of small units beneath each node of the tree. Each unit is meaningful and can be understood by itself. Units are manipulated as a whole by structure editors rather than on a character level by text editors. |
See also:
Object-Oriented Problem Separation
http://www.cs.brandeis.edu/~dkw/C-humor/pasta.txt
More on fractals in general:
http://mathforum.org/library/topics/fractals/
http://mathforum.org/alejandre/workshops/fractal/fractal3.html
http://math.rice.edu/~lanius/fractals/
http://www.xmarks.com/topic/fractals
https://www.fractalus.com/
http://sprott.physics.wisc.edu/carlson/