GNU Smalltalk - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Introduction

GNU Smalltalk
GNU Smalltalk logo.svg
Dernière version 3.2 (2 mai 2010) [+/−]
Version avancée Git et CVS [+/−]
Environnements Multiplate-forme
Type Langage de programmation
Licences GNU GPL et GNU LGPL
Site Web smalltalk.gnu.org

GNU Smalltalk est une implémentation libre de Smalltalk, un langage de programmation orientée objet. GNU Smalltalk fait partie du projet GNU.

Il est multiplate-forme.

Présentation

GNU Smalltalk implémente le langage Smalltalk-80.

Il peut être utilisé comme langage de script. Il est accédé via un interpréteur en ligne de commande. La machine virtuelle est équipée d'un ramasse-miettes qui gère automatiquement la mémoire.

GNU Smalltalk donne accès à plusieurs bibliothèques logicielles libres :

  • SQLite pour les bases de données
  • SDL pour le son et la vidéo
  • Cairo pour les graphismes
  • GNU gettext pour l'internationalisation
  • Seaside, un framework web.

Il fournit un outil capable de générer automatiquement de la documentation à partir du code source. Un mode Emacs permet d'obtenir des fonctionnalités spécifiques, par exemple la coloration syntaxique, diverses aides à l'édition, et un accès à la machine virtuelle. Le framework de test SUnit s'intègre à GNU Smalltalk, il permet au développeur de faire des tests unitaires.

GNU Smalltalk est un logiciel libre. La machine virtuelle est diffusée selon les termes de la licence GNU GPL. La bibliothèque de classes est diffusée selon les termes de la licence GNU LGPL.

Exemples

L'interpréteur en ligne de commande attend un point d'exclamation pour évaluer l'entrée. L'exemple typique hello world :

      'Hello world!' displayNl      

L'évaluation de cette ligne envoie le message displayNL à l'objet Hello world de la classe String.

D'autres exemples de base :

      -5 abs        "5"      5 + 2 * 0     "0"      'Vif juge, trempez ce blond whisky aqueux' asLowercase asSet asSortedCollection asString   "' ,abcdefghijklmnopqrstuvwxyz'"      

Bibliothèque de classes

La bibliothèque fournie des classes de base. Par exemple :

Elle fournit également d'autres classes. Par exemple :

  • Blox : interface graphique reposant sur Tk.
  • nombre complexe
  • accès aux bases de données
  • accès réseau
  • internationalisation
  • XML
  • compression
Page générée en 0.267 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
A propos - Informations légales
Version anglaise | Version allemande | Version espagnole | Version portugaise