4gl-alliance

Open-source Informix-4GL toolchain

Keep your investment in business logic — now with Open Source.

Aubit4GL compiles your existing Informix-4GL source unchanged and runs it on PostgreSQL, Informix or MySQL. The VENTAS Desktop Client then wraps that same logic in a modern interface — desktop and mobile. Open source. No licence fees. No lock-in.

4GL-ALLIANCESCREENFORM
Toolchain..........................Aubit4GL compiler
Client..........................VDC — desktop · mobile
Databases..........................PostgreSQL · Informix · MySQL · ODBC
Language..........................x4GL · embedded SQL
Licence..........................GPL / LGPL — open source
Status..........................maintained

The compiler

Aubit4GL is a GPL, Informix-4GL–compatible compiler. Existing 4GL source compiles and runs — connecting natively to PostgreSQL, Informix and MySQL, or anything via ODBC.

The client

The VENTAS Desktop Client (VDC) renders 4GL screenforms as a modern GUI — buttons, tabs, date pickers, maps, grids — over an XML protocol. Same logic, new front-end.

The alliance

A vendor-neutral home for the open-source x4GL ecosystem, bringing scattered work — compiler, clients, docs, community — under one roof.

See it running

Your 4GL logic, a modern client

This is a real ERP — drawn by the open-source VDC straight from Informix-4GL code. The same business logic you already have, wrapped in a contemporary desktop interface, with not a line of GUI code written by hand: you write the program, the client draws the windows.

A complete ERP running in the VDC client A full business application in the VDC — dark theme, dockable panels, an action toolbar. Compiled from 4GL.
Light and dark themes side by side
Light and dark, switched in a click
Theme picker
Built-in themes
Toast notification
Toast notifications
Window snapping
Window snapping & docking
Live world-clock widget
Rich widgets — even a live world clock

From the people who shipped it

Not a museum piece — a migration tool in production

Real reports from teams that moved real Informix-4GL systems onto open databases with this toolchain.

Fantastic work — allowed us to move off a legacy system within two months and onto PostgreSQL with Aubit4GL under Debian 10.
★★★★★ SourceForge review
13,647 4GL program modules — all compiled fine with Aubit4GL. The few runtime differences were fixed in record time; the programs run the same as the original i4GL.
comp.databases.informix
We've already successfully migrated a large system from Informix SE to PostgreSQL with just a few 4GL source-code changes.
Aubit4GL developers list

Reviewers call it suitable even for large corporate situations, with support they describe as “exceptional.”

Get running in 15 minutes

From 4GL source to a window on screen

With the Aubit4GL tools and a VDC client available, three steps take you from nothing to a running GUI. The full walkthrough is in the Developer Guide.

  1. 1

    Point your shell at the tools and the client

    A 4GL program runs on the server and talks to the VDC client over an XML protocol. Set these once:

    export AUBITDIR=/opt/aubit4gl            # your Aubit4GL install
    export PATH=$AUBITDIR/bin:$PATH
    export LD_LIBRARY_PATH=$AUBITDIR/lib:$LD_LIBRARY_PATH
    
    export A4GL_UI=XML                       # speak the VDC's XML protocol
    export AFGLSERVER=127.0.0.1              # where the VDC client is listening
    export AFGLPORT=3490                     # the client's port
  2. 2

    Compile & run your first program

    Prove the compiler works — text only, no GUI yet. Put this in hello.4gl:

    MAIN
        DISPLAY "Hello, 4GL!"
    END MAIN

    Then compile it to a runnable .4ae and run it:

    4glpc -o hello.4ae hello.4gl
    ./hello.4ae                              # -> Hello, 4GL!
  3. 3

    Open a window in the VDC

    A GUI program is a form (.per, the screen) plus a program (the logic). Compile the form, compile the program, and run it with the VDC client listening:

    fcompile -xml hello.per                  # compile the form the client renders
    4glpc   -o hellogui.4ae hellogui.4gl     # compile the program
    ./hellogui.4ae                           # a window opens in the VDC client

The directory

Everything, in one place

The project's work has lived across SourceForge, company sites and app stores for years. This is the index that ties it together. Links marked new are the canonical home going forward; mirror means kept for reach; to move is being migrated here.