Gambas (langage)

logiciel libre

Gambas est un langage de programmation interprété orienté objet utilisant la syntaxe du BASIC, disponible pour GNU/Linux et autres systèmes Unix ou assimilés. Il est accompagné d'un interpréteur et d'un IDE, lui-même écrit en Gambas.

Gambas
Logo.
Capture d'écran.
Capture d'écran.

Date de première version 1999
Paradigme Programmation orientée objet, structurée et impérative
Auteur Benoît Minisini (en)
Dernière version 3.19.0 ()[1],[2]Voir et modifier les données sur Wikidata
Typage Statique, fort, sûr, nominatif
Influencé par Visual Basic
Écrit en C et C++Voir et modifier les données sur Wikidata/QtVoir et modifier les données sur Wikidata
Système d'exploitation Linux, Unix
Licence Licence publique générale GNU version 2[3]Voir et modifier les données sur Wikidata
Site web gambas.sf.net

Gambas se donne pour objectif de reproduire la facilité d'utilisation de Visual Basic en améliorant ses fonctionnalités. Bien que son interpréteur ne soit pas compatible avec les programmes dont le code source est écrit en Visual Basic, Gambas est lui aussi dérivé du BASIC et orienté objet. Il n'est pas un clone de Visual Basic, son auteur insiste sur ce point, mais constitue une solution pertinente pour les utilisateurs du Visual Basic souhaitant créer des applications pour Linux/Unix sans passer à un environnement totalement différent.

Gambas est un logiciel libre diffusé sous la licence GNU GPL, développé principalement à Paris depuis 1999 par Benoît Minisini.

Gambas est l'acronyme récursif de Gambas almost means Basic (en français, « Gambas veut presque dire Basic »). C'est aussi le nom espagnol d'une crevette de mer, l'Aristeidae, dont provient le logo du projet.

Gambas est amélioré continuellement et peut être conseillé à tous les utilisateurs de Linux/Unix qui souhaitent mettre à profit leurs connaissances BASIC sous licence GNU.

Gambas est disponible sous forme de paquets RPM ou Deb pour de nombreuses distributions Linux, notamment Debian, Ubuntu, SuSE ou encore Mandriva.

Fonctionnalités

modifier

Avec Gambas, il est notamment possible de :

  • développer une application en ligne de commande,
  • développer une interface graphique utilisant indifféremment Qt ou GTK+,
  • utiliser des bases de données MySQL, PostgreSQL, SQLite, Firebird ou toute base de données utilisant ODBC,
  • piloter des applications KDE avec DCOP,
  • internationaliser les applications,
  • adapter (il ne suffit pas de les copier, même si un module aide la transposition) des programmes Visual Basic sous Linux,
  • créer des applications réseaux, et utiliser directement les protocoles HTTP, FTP, DNS, SMTP,
  • réaliser des programmes utilisant SDL ou OpenGL (ce qui permet par exemple de réaliser des jeux),
  • créer des applications Web avec gestion de sessions.

Particularités

modifier
  • Gambas possède un faible nombre de classes et de symboles comparativement au nombre de fonctionnalités, ce qui facilite son apprentissage,
  • L'interface graphique est presque complètement indépendante du toolkit (QT ou GTK+) utilisé.

Exemple de programme en Gambas

modifier

Simple programme Hello world écrit en Gambas.

Public Sub Main()
    Message("Hello, World!")
End

Programme qui calcule un polynôme de 100 termes 500 000 fois et le répète dix fois (utilisé pour les tests de performance).

Private Sub Test(X As Float) As Float

    Dim Mu As Float = 10.0
    Dim Pu, Su As Float
    Dim I, J, N As Integer
    Dim aPoly As New Float[100]

    N = 500000

    For I = 0 To N - 1
        For J = 0 To 99
           Mu =  (Mu + 2.0) / 2.0
           aPoly[J] = Mu
        Next
        Su = 0.0
        For J = 0 To 99
            Su = X * Su + aPoly[J]
        Next
        Pu += Su
    Next

    Return Pu

End

Public Sub Main()

    Dim I as Integer

    For I = 1 To 10
        Print Test(0.2)
    Next

End

Alternatives

modifier

Portage vers d'autres plates-formes/architectures

modifier

Gambas est théoriquement portable vers d'autres plates-formes. Son auteur principal, Benoît Minisini, a déclaré : « En pratique, le portage vers Windows est relativement compliqué, il ne m'intéresse pas, mais je suis prêt à aider quiconque veut se lancer là-dedans »[4]. Les applications Gambas en ligne de commande fonctionnent sous Windows avec Cygwin.

Gambas fonctionne sous FreeBSD et Mac OS X.

Gambas fonctionne sur les architectures 64 bits[pas clair].

Notes et références

modifier
  1. a et b « Release of Gambas 3.19.0 » (consulté le )
  2. a et b « Tag for 3.18.4 » (consulté le )
  3. SourceForge.net (forge logicielle), consulté le .Voir et modifier les données sur Wikidata
  4. DLFP: Première 'Release Candidate' de Gambas 2

Voir aussi

modifier

Liens externes

modifier