Gambas
Da Wikipedia, l'enciclopedia libera.
Gambas è un potente ambiente per lo sviluppo di applicazioni disponibile per piattaforme *nix basato sul linguaggio BASIC con estensione agli oggetti.
Gambas indica al contempo sia l'IDE (Integrated Development Environment), vale a dire l'ambiente di sviluppo, sia il linguaggio stesso. L'interprete di Gambas è scritto in C/C++ ma tutto l'IDE è scritto in Gambas.
Indice |
[modifica] Funzionalità
Con Gambas è possibile:
- realizzare applicazioni stand-alone con interfaccia grafica (GUI) basate su GTK o Qt;
- accedere ai database MySQL, PostgreSQL, Firebird, ODBC ed SQLite;
- pilotare le applicazioni KDE con DCOP;
- realizzare applicazioni 3D con OpenGL;
- creare applicazioni web basate su CGI;
- è possibile tradurre i propri progetti per renderli internazionali.
[modifica] Storia
Gambas è un progetto Open source rilasciato sotto licenza GPL nato nel 1999 dalla mente di Benoît Minisini, un programmatore francese. La scelta del nome è curiosa: come spiega il "padre" di Gambas, negli anni Novanta andava di moda chiamare i nuovi linguaggi di programmazione con nomi di animali, vedi Python, Camel, Bonobo, ecc... Minisini ricercava anche un acronimo che fosse ricorsivo con l'idea alla base di Gambas, vale a dire un linguaggio molto simile al BASIC. Fu scelto perciò GAMBAS, che in spagnolo significa Gambero (ecco il nome di animale) ma che è anche l'acronimo di Gambas Almost Means BASIC (Gambas più o meno significa BASIC). Anche se molto spesso si tende ad indicare la similitudine con il Microsoft Visual Basic per spiegare ai profani a cosa più assomiglia, Gambas non è un clone di questo linguaggio e le applicazioni dell'uno non possono girare sull'altro: le similitudini fra i 2 sono limitate al linguaggio di base, il BASIC.
[modifica] Linguaggio pseudo compilato
Gambas non è un linguaggio compilato come il C, dove l'eseguibile viene creato durante la compilazione del sorgente, ma non è neanche un linguaggio interpretato come il vecchio BASIC, dove ogni istruzione viene analizzata ed eseguita via via che il flusso dell'elaborazione attraversa il listato del codice. Gambas può creare dei cosiddetti "eseguibili", che altro non sono che archivi non compressi contenenti l'applicazione scritta in Gambas convertita in bytecode, uno pseudo codice a metà fra il linguaggio macchina puro ed il codice originale scritto in Gambas, che l'interprete Gambas può eseguire più velocemente rispetto ad una interpretazione del codice comando per comando. Questo modo di operare è comune ad altri linguaggi, ad esempio Python o Ruby: anch'essi traducono il codice sorgente in bytecode la prima volta che viene eseguito il programma, in modo da avere la versione "più veloce" pronta per le successive esecuzioni.
[modifica] Architettura
Gambas si compone di diversi elementi:
- come prima cosa abbiamo il progetto, una cartella contenente le classi, i moduli ed i form che costituiscono l'applicazione;
- un compilatore, denominato gbc, che converte il progetto in bytecode;
- un archiviatore, denominato gba, che archivia il progetto in bytecode in un file eseguibile;
- un interprete, denominato gbx, che esegue il progetto compilato.
[modifica] Licenza
Gambas è rilasciato sotto licenza GNU GPL.