Informix-4GL includes embedded
SQL, a report writer language, a form language, and a limited set of imperative capabilities (functions, if and while statements, arrays, etc.). The language is particularly close to a natural language and is easy to learn and use. The
Form Painter,
Screen Code Generator,
Report Code Generator (
Featurizer) enabled adding custom business logic. It also had, as additional components a menu system, and a front-end
graphical user interface (GUI) called
Generator. The 4GL portfolio is historically divided into two main lines: the C Compiler–based model (compiled applications) and the Rapid Development System (RDS) model (interpreted/p-code applications), with both options featuring complementary components, like an interactive debugger for
dumb terminals and SQL/Database connectivity tools.
Informix-4GL C Compiler The
C Compiler uses a preprocessor to generate INFORMIX-ESQL/C source code. This code is preprocessed in turn to produce C source code, which is then compiled and linked as object code in an executable command file. It is specifically designed to run as a client on a network, connected to an
Informix database engine service. It has a mechanism for calling C functions and conversely, to be called from executing C programs. Applications compiled through the C Compiler executes faster, but compiles slower, executables are bigger, and may not be as portable as applications compiled through RDS. The following list details the steps performed when generating an executable through the Informix-4GL C Compiler. • The 4GL source code is converted into ESQL/C statements, producing a corresponding embedded SQL (.ec) file. • The ESQL/C code is converted into
C programming language, producing a standard C (.c) file. • The C compiler processes the C code, yielding an object (.o) file. • The linker links the object files together with all appropriate libraries (.a files), and creates the actual executable program, which usually has a .4ge extension.
Informix-4GL RDS The Informix-4GL Rapid Development System (RDS) uses a compiler to produce intermediate byte code, or
pseudo-machine code (called p-code), in a single step, which is then executed by an
interpreter. In contrast to the Informix-4GL C Compiler, it skips steps 2 through 4 in the previous list, processing directly the 4GL code and producing a p-code file (.4go or .4gi, depending how the program is compiled), which can then be executed by the interpreter, or debugged by the debugger A particular feature is the comprehensive error checking which is built into the final executable and the extremely helpful error messages produced by both compilers and executables. It also features embedded modal statements for changing compiler and executable behavior (e.g. causing the compiler to include memory structures matching database schema structures and elements, or to continue executing in spite of error conditions, which can be trapped later on).
Informix-4GL SKUs Following the distinction between the two main approaches—C Compiler and RDS—the Informix-4GL product line is organized into a set of SKUs that implement each model. Both tracks are typically offered in Developer and Runtime editions, with additional supporting components such as debugging tools and SQL connectivity modules. Together, these SKUs support the full lifecycle of Informix-4GL applications, from development to deployment and execution. The following list summarizes the main Informix-4GL SKUs available today and their primary purpose: •
Informix 4GL C Compiler – Developer Edition: Complete environment for developing compiled 4GL applications in C. Allows writing, compiling, testing, and packaging programs for production. •
Informix 4GL C Compiler – Runtime Edition: License focused only on running already compiled 4GL applications. Used in production; does not include development tools. •
Informix 4GL Rapid Development System (RDS) – Developer Edition: RAD platform for creating interpreted 4GL applications (p-code), including forms, menus, and business logic. Focused on rapid development. •
Informix 4GL Rapid Development System (RDS) – Runtime Edition: Execution environment for applications generated in RDS. Allows running interpreted programs in production, without development resources. •
Informix 4GL Interactive Debugger: Debugging tool for 4GL applications (both C Compiler and RDS). Supports execution analysis, variables, and program flow. •
Informix 4GL SQL/Database Support Components: Components that support connectivity and execution of SQL commands in 4GL applications, integrating the runtime with the Informix database. ==Informix-4GL Syntax==