4GL è l’acronimo di fourth-generation programming language. Il linguaggio 4GL è stato ingegnerizzato negli anni ‘80 per superare alcuni limiti architetturali dei precedenti linguaggi 3GL, come il C.
La crescente domanda di applicazioni capaci di interfacciarsi a base dati aveva infiammato la richiesta di ambienti di sviluppo astratti dalla scrittura di codice a livello macchina, ma che contenessero funzionalità e tipi per facilitare le operazioni CRUD sui dati.
Da qui la progettazione di un linguaggio di programmazione più portabile e caratterizzato dal supporto nativo per la gestione dei database, l’esecuzione di operazioni matematiche e finanziarie, la creazione di interfacce utente grafiche.
Come spesso succede in ambito informatico, da uno stesso prototipo di linguaggio videro la luce diversi dialetti, caratterizzati da feature aggiuntive (come, ad esempio, la gestione nativa della reportistica). Una delle varianti che incontrò un notevole successo di mercato fu quella di Informix, grazie all’inclusione di istruzioni SQL embedded e a una sintassi particolarmente intuitiva. 4GL Informix si mise subito in evidenza perché rappresentava una soluzione flessibile per eseguire operazioni complesse sui dati, sviluppata in un linguaggio di alto livello, indipendente dal sistema operativo e dall’hardware.
4GL e gli ERP moderni
Nel frattempo, anche i software gestionali si stavano evolvendo: nati come applicazioni chiuse con poche funzionalità, stavano diventando ambienti sempre più aperti alle richieste degli utenti e personalizzabili. Si rendeva perciò necessario dotare gli ERP di un ambiente di sviluppo interno che permettesse di modificare le interfacce e le logiche di business, senza però gravare gli analisti di un eccessivo effort tecnico.
Il 4GL, grazie alla sua sintassi intuitiva e alle sue capacità di manipolazione dei dati, si prestava ottimamente a questo scopo. Numerosi vendor decisero perciò di dotare il proprio ERP di un ambiente di personalizzazione interno basato su 4GL, per offrire ai propri partner la possibilità di modificare liberamente il gestionale con uno strumento caratterizzato da una curva di apprendimento poco impegnativa.
4GL e il web
Forte del successo negli ERP per desktop, il 4GL ha trovato ampio spazio di impiego anche nei gestionali web based. Una caratteristica che ha facilitato l’embedding del 4GL negli ERP SaaS è stata la possibilità di utilizzare un Transpiler per convertire il sorgente 4GL in codice JavaScript: in questo modo le personalizzazioni sviluppate in 4GL possano essere integrate in maniera trasparente nell’interfaccia web.
Un’altra caratteristica che ha giocato a suo vantaggio è la sua estendibilità: grazie all’interoperabilità COM è infatti possibile richiamare in 4GL una DLL creata con un altro ambiente di sviluppo. Nel caso della migrazione da un vecchio gestionale on premise a un nuovo gestionale online, questa feature permette di riutilizzare rapidamente componenti del sistema precedente nella nuova logica di business.
4GL e low code
Grazie alla sua natura di linguaggio di alto livello, 4GL è servito come base per l’ingegnerizzazione di alcuni ambienti di sviluppo low code, che ne ricalcano i principi di intuitività e semplicità, cercando di proporsi come la sua naturale evoluzione. La trasformazione del paradigma 4GL negli IDE low code moderni è stato possibile grazie al concetto di Domain-Driven Design, su cui sono stati costruiti i primi ambienti di sviluppo che affiancavano al tradizionale scripting l’elaborazione di logica di business per mezzo di blocchi grafici e workflow. Alcune sintassi degli script degli IDE low code, a causa della loro forte astrazione e imperatività, non possono fare a meno di ricordare le strutture sintattiche del classico 4GL.
Un criterio di scelta per l’ERP aziendale
Oggi, la possibilità di attivare sulla propria licenza ERP un’IDE basato su 4GL può rappresentare un criterio di scelta per optare per una soluzione gestionale piuttosto che un’altra. Un ambiente di sviluppo in 4GL permette infatti al team IT interno dell’azienda di acquisire in breve tempo il know-how necessario per eseguire personalizzazioni sul gestionale, rendendo l’azienda più indipendente dal partner fornitore del software.
Utilizzare un ERP basato su 4GL snellisce le tempistiche e i costi degli interventi sul programma, e permette di realizzare applicazioni con interfacce grafiche intuitive, e molto potenti nella manipolazione dei dati. 4GL offre il beneficio di creare codice riutilizzabile, grazie alla sua struttura a moduli, ed è presente nei modelli di training delle intelligenze artificiali più diffuse: in questo modo il personale tecnico può anche impiegare l’AI come supporto all’attività di sviluppo.
Portare 4GL nella propria azienda
4GL oggi si presenta come un ambiente di sviluppo versatile, con una curva di apprendimento facile, particolarmente indicato per la manipolazione dei dati. Per questo motivo può essere considerato una potenziale alternativa ad ambienti di sviluppo low code o soluzioni di BI.
Anche se 4GL richiede la scrittura di codice sorgente, la sua sintassi intuitiva permette di abbattere i tempi di ingegnerizzazione: alcune aziende potrebbero perciò riscoprire in 4GL un valido alleato per la realizzazione di applicazione aziendali a costi contenuti.
Il training delle risorse può essere delegato al fornitore dell’ERP o a un portale online specializzato in formazione IT, e in breve tempo permetterà al team interno dell’azienda di realizzare i primi sviluppi in autonomia.