An intelligent real time tool to assist a computer programmer during the
writing and/or maintenance of a computer program. The tool generates
assist windows that contain program related information that the
programmer can use to construct a programming language statement and/or
to obtain real time information about a programming language statement.
An assist window can be automatically displayed as determined by the tool
itself, and/or manually displayed on demand in response to a user input
command. An assist window displays two general categories of information
including but not limited to selection menu information based on a
partial compilation of all programming language statements, and
informational displays based on a partial compilation and a reverse parse
of an immediate programming language statement. The statement generating
tool assist windows are non-intrusive to programmer input and can be
ignored by the programmer by merely continuing to type.