Euphoria (langage)
Euphoria est un langage de programmation interprété créé par Robert Craig de Rapid Deployment Software.
Euphoria | ||
Date de première version | 1993 | |
---|---|---|
Paradigmes | impératif, procédural | |
Auteur | Jeremy Cowgar, Robert Craig (original), Matt Lewis, Derek Parnell | |
Développeurs | openEuphoria Group | |
Dernière version | 4.0.5 () | |
Typage | statique, dynamique | |
Influencé par | BASIC, C, C++ | |
A influencé | Python | |
Système d'exploitation | Multi-plate-forme WIN32, Linux, macOS, FreeBSD, NetBSD, OpenBSD | |
Licences | BSD | |
Site web | openeuphoria.org | |
Historique
Euphoria a été créé par Robert Craig de Rapid Deployment Software à Toronto en Ontario (Canada). Le langage a été d'abord développé sur Atari ST, mais ces versions n'ont jamais été diffusées. La première version commerciale publiée était dédiée à la plateforme DOS 16 bit. La licence était de type proprietaire. En 2006, avec la sortie de la version 3, Euphoria est devenu open source. Dès lors, le projet est maintenu et développé par l'openEuphoria Group. En décembre 2010, l'openEuphoria Group a publié la version 4 d'openEuphoria qui était marquée par le changement de l'identité et de la mascotte du projet. OpenEuphoria est actuellement disponible pour Windows, Linux, macOS et trois variantes de *BSD.
Fonctionnalités
Euphoria est un langage généraliste haut niveau, impératif et interprété. Un programme traducteur générant du code source en langage C, qui peut ensuite être compilé par GCC ou Open Watcom. Une autre possibilité est d'intégrer l'interprète aux programmes en Euphoria afin de créer des exécutables indépendants. Plusieurs librairies pour interface graphique sont supportés, parmi lesquelles Win32lib et des wrappers pour wxWidgets, GTK+ et IUP. Euphoria fournit une base de données aux fonctionnalités basiques et des wrappers pour plusieurs autres bases de données.
Hello World
puts(1,"Hello World!\n")
Utilisation
Euphoria est conçu pour faciliter la gestion d'ensembles dynamiques de données de différents types et est particulièrement utile pour le traitement des chaînes et des images. Euphoria a été utilisé dans des expériences d'intelligence artificielle, l'étude des mathématiques, pour enseigner la programmation et pour implémenter des polices impliquant des milliers de caractères. [citation nécessaire] Une grande partie de l'interpréteur Euphoria est écrit en Euphoria.