A needs to call B and C
B needs to call C and E
C needs D
D needs to call E
Show how you would accomplish the above in a statically scoped language. You should try to organize things so that, to the best of your ability, all procedures that do not need to be called from a procedure must be hidden. (Note that it may not be possible to do this completely: you just need to give it your best shot).