To understand the functions of Natural, you must first understand the environment in which it runs.
A graphical user interface (GUI) environment differs from a traditional mainframe environment in at least two important ways:
Applications share screen space. A Natural application runs in a group of one or more windows and rarely occupies the full screen.
Applications share computing time. An application cannot run continually, or if it does, it must run in the background.
Using Natural, your applications share computing time and other resources (such as the clipboard). An event-driven application consists of dialogs and dialog elements that wait for a particular event to happen.
While your application is waiting to execute an event, it remains on the desktop (unless the user closes the application). In the meantime, the user can run other applications, resize windows, or customize system settings (such as color). However, your code is always present, ready to be activated when the user returns to your application.