Key points are not available for this paper at this time.
The importance of integration in programming environments is well known. Perhaps the easiest way to build an integrated system is to build a closed system; the designers of the system can use whatever ad hoc techniques are available to make the pieces they provide hang together nicely. Many of the integrated editor/compiler/execution environments (like the Cornell Program Synthesizer) fall into this category Teitelbaum81.
James Donahue (Tue,) studied this question.