Next Previous Up Top Contents Index

6.9 Interacting with an application

6.9.6 Effects of interactive changes to application threads

As stated in Section 6.9.1, because the interaction pane compiles and executes the code you enter in the context of the paused thread to which the debugger is connected, it is possible to define new bindings, redefine existing bindings, and get and set values in an application. You can then resume execution to test your changes.

The level of optimization that occurred when the application was originally built does, however, affect the kinds of things you can do interactively. It is best to compile a project in Interactive Development mode if you want to define and redefine classes and methods interactively. Even in that mode you may encounter some restrictions, particularly when trying to make changes in system libraries.

As noted in Section 6.9.4, the results of compiling interactive changes to threads are added to a temporary layer of the compiler database for the application's project. This allows you to browse the effects of your changes while the application remains running, but these changes are not saved to disk in the compiler database file, nor are they saved in the project source code files. When you stop or close an application, Functional Developer removes the interactive layer automatically. (This is one of the reasons why you are asked to confirm when you choose Application > Stop.)


Getting Started with Functional Developer - 31 MAR 2000

Next Previous Up Top Contents Index