Many system building efforts in artificial intelligence intentionally begin with expressively rich and flexible declarative structures for the control of problem solving-especially when the best problem solving strategies are not known. However, as experience with a system increases, it sometimes becomes desirable to compile declarative knowledge into procedures for purposes of efficiency. We present a paradigm for compilation which begins with declarative opportunism, moves to a phase of heuristic implementation of a partial plan and finally evolves into a fully elaborated procedure. We use the PROTEAN geometric constraint satisfaction system as an example. Using results from a purely declarative structure, we were able to compile strategic knowledge into a procedure for planning a solution. The problem solving behavior of the new system is reported.