1. The idea
1.1 Graphical representation of a program
1.2 A flat view ?
1.3 A dead end
1.4 Cheating ?
1.4.1 Adding functionality
1.4.2 Object orientation
1.4.3 Fiddling with function pointers
1.5 Context oriented programming
1.5.1 Sharing information within a level
1.5.2 Calling a function from a lower level
1.5.3 Definition of a level or a tree
2. Building blocks
3. Reusing modules in different context
Top Up

1.4.1 Adding functionality


The first solution is relativly easy to achieve. But the report engine is kind of moving to the left of the graph a little bit more. Its reuseablity is a little compromised. All of a sudden, all application using it are enhanced. They can now send report to fax and mail but they all have to be modified. All of a sudden, the reusable component introduces a price. Not only the new parameter will have to be passed it will have to be queried (obtain from one source). Now if all reusable component start to include every enhancement required by every application needing them, you will end up with larger and larger components, with tons of options. Further, the requirement of one application will probably clash at some point with the requirement of others.

For sure, there must be a better way.

Top Up

One big HTML document