You are on page 1of 4

EUPHORIA (lenguaje de programación)

EUPHORIA (acrónimo del inglés: "End User Programming with


Hierarchical Objects for Robust Interpreted Applications"), es un
EUPHORIA
lenguaje de programación interpretado, de alto nivel, estructurado,
imperativo, y motor de juego, simultáneamente, creado por Robert Desarrollador(es)
Craig en 1993 como su tesis doctoral, y luego comercializado por openEuphoria Group
la firma RDS (Rapid Deployment Software). Euphoria es de openeuphoria.org
dominio público y de código abierto. El código fuente del intérprete Información general
Euphoria está escrito completamente en lenguaje EUPHORIA.
Extensiones .e, .ex, .exw, .edb
El lenguaje posee soporte a la programación multitarea, que comunes
posibilita la ejecución de varias tareas simultáneamente, con una Paradigma programación estructurada,
velocidad razonable, y puede ser útil en la creación de juegos que programación imperativa
precisan ejecutar múltiples tareas. Apareció en 1993
Diseñado Jeremy Cowgar, Robert Craig
Es un lenguaje simple y potente, que, comparado con otros
por (original), Matt Lewis, Derek Parnell
lenguajes interpretados, ofrece una bastante mayor velocidad de
Última (22 de diciembre de 2010)
ejecución, principalmente en entornos de texto. Aunque no es
versión
orientado a objeto su particular flexibilidad en el manejo de datos,
estable
rendimiento y sencillez lo convierten en una opción muy atractiva
Sistema de dinámico
para desarrollos en las plataformas más utilizadas de 32 bits.
tipos
En cuanto a la programación en entornos gráficos, el intérprete Influido por C, C++, BASIC
ofrece una gama tal vez algo limitada de instrucciones, pero se Sistema Multiplataforma
mejora notablemente con el uso de librerías externas y con un operativo
entorno de desarrollo IDE/RAD disponible en forma gratuita.
Licencia BSD
Existe un traductor gratuito de EUPHORIA a C que permite [editar datos en Wikidata]

generar a partir de código EUPHORIA un programa en lenguaje C


para diversos compiladores disponibles, en DOS, Windows y Linux/BSD, con lo cual su velocidad de ejecución se puede incrementar
al máximo.

Índice
Historia
Características
Tipos de archivo
Tipos de datos
Referencias
Enlaces externos

Historia
La primera versión de EUPHORIA fue publicada en julio de 1993,1 siendo un proyecto de código cerrado. A partir de la versión
3.0.0, lanzada el 19 de septiembre de 2006, pasó a ser totalmente código abierto (algunas partes del paquete ya estaban en dominio
público, desde la versión 2.5 Alpha). Su última versión la 3.1.1 fue lanzada el22 de agosto de 2007.

Desarrollado inicialmente como un proyecto personal, para inventar un lenguaje de programación desde cero, Euphoria tuvo su
primera versión real para un Atari ST .2 La versión original para Atari ST, nunca fue lanzada. La primera aparición mundialmente
visible del lenguaje, fue para el sistema DOS de 32 bits. Versiones actuales, además del DOS de 32 bits, soportan Microsoft
Windows, Linux y FreeBSD. Los programadores involucrados en el proyecto (GNU)están actualmente trabajando para el desarrollo
de versiones de 64 bits. Con el lanzamiento de la versión 2.5 Alpha, lanzada el 15 de noviembre de 2004, el intérprete de
EUPHORIA, fue dividido en tres partes: un analizador sintáctico, un front-end, y un back-end, las primeras dos partes escritas en
Euphoria y liberadas al dominio público y la tercera escrita en C se mantuvo secreta y solo se vendía bajo una licencia bastante
restrictiva.[cita requerida]

En 2008 se liberó la versión 3.0, como software libre con código fuente totalmente abierto. En el mismo año 2008 se liberaron dos
[cita requerida]
versiones con ligeras modificaciones 3.1 y 3.1.1 y se empezó el desarrollo de la versión 4.0.

EUPHORIA, fue primeramente usado como pasatiempo]][cita requerida] para programación de juegos ]][cita requerida] y para la
creación de inteligencia artificial, mas probó ser útil para los más diversos propósitos. Ya existen programas creados usando
EUPHORIA, y programas que usan EUPHORIA, como script para su programa. Un buen ejemplo, es el SDK de 3DSTATE 3D
Engine, y 3D Developer Studio.

Características
EUPHORIA fue desarrollado para que cumpliera con las siguientes premisas:

Simplicidad: facilidad para su aprendizaje y uso rápidos.


Poder: capacidades de programación en bajo nivel necesarias para acceder a rutinas del sistema operativo,
memoria RAM, dispositivos, puertos yBIOS. Enlace simple con rutinas C.
Seguridad: extenso soporte de depuración, chequeo de tipo de datos y gestión de memoria automática.
Flexibilidad: soporte para tipos implícitos sencillos, potentes, dinámicos y también otros definidos por el
usuario.
Velocidad: velocidad suficiente para rivalizar con los lenguajes compilados puros.
Eficiencia: desarrollo rápido de aplicaciones eficientes y robustas, con muy escaso consumo de recursos hardware.
Gestión de Memoria: Gestión automática dememoria virtual, independientemente del sistema operativo.

Tipos de archivo
Los archivos de código más comunes de EUPHORIA corresponden con los siguientes tipos y extensiones:

.E (Biblioteca DOS - texto)


.EU (Biblioteca Linux/FreeBSD - texto)
.EW (Biblioteca Windows - texto)
.EX (Ejecutable con Intérprete externo DOS32 - texto)
.EXU (Ejecutable con Intérprete externo Linux/FreeBSD - texto)
.EXW (Ejecutable con Intérprete externo Windows32 - texto)
.IL (Programa multiplataforma - binario)
.EXE (Ejecutable que incluye un pequeño intérprete - binario)
.PRJ (Proyecto armado mediante la IDE EUPHORIA - texto)

Tipos de datos
EUPHORIA tiene un tipo de dato básico:

object: Un tipo de dato genérico que puede contener cualquier tipo de elemento, y puede ser cambiado durante la
ejecución. Eso significa que si el programador tiene un objeto llamado X que posee el valor 3.172, después el
programador puede darle a X el valor "ABC".
Adicionalmente, Euphoria tiene tres tipos de dato "especializados":

atom: números implementados como enteros o fracionários de 32 bit o 64 bit, dependiendo del valor actual.
Almacena los valores enteros en 4 bytes.

integer: una forma especial de atom, restricta a valores enteros de 31 bits. Ese tipo de dato es más eficiente que el
atom, pero no puede contener la misma extensión. Los caracteres son almacenados como enteros.

sequence: Vector que puede contener cero o más elementos; cada elemento es un objeto. La cantidad de
elementos a contener no es fija; el codificador puede agregar o quitar elementos cuando es requerido durante la
ejecución.
Ejemplo de una secuencia:

object r
r = {"A","B","C","D","E","F","G"}

El ejemplo de arriba es lo mismo que:

object r
r = {65,66,67,68,69,70,71}

Donde cada elemento se reemplazó por su código ASCII. Como esto puede ser complicado, las secuencias pueden ser usadas de
forma aún más simplificada:

object r
r = "ABCDEFG"

que también puede ser declarado como:

Sequence r
r = "ABCDEFG"

Los números pueden ser colocados enhexadecimal:

object r,s,v,w,k
r = #152 -- r es igual a "R"
s = #FE -- s es igual a 254 en decimal
v = #A000 -- v es igual a 40960 en decimal
w = #FFFF00008 -- w es igual a 68718428168 en decimal
k = -#10 -- k es igual a -16 en decimal

Referencias
1. [1] (http://directory.fsf.org/project/euphoria/)Free Software Directoty
2. [2] (https://web.archive.org/web/20080704080215/http://www .britishgaming.co.uk/?p=536)British Gaming

Enlaces externos
EUPHORIA Página oficial del lenguaje

EUPHORIA Comunidad de usuarios

Obtenido de «https://es.wikipedia.org/w/index.php?title=EUPHORIA_(lenguaje_de_programación)&oldid=102330933
»

Esta página se editó por última vez el 3 oct 2017 a las 22:40.
El texto está disponible bajo laLicencia Creative Commons Atribución Compartir Igual 3.0 ; pueden aplicarse cláusulas
adicionales. Al usar este sitio, usted acepta nuestrostérminos de uso y nuestra política de privacidad.
Wikipedia® es una marca registrada de laFundación Wikimedia, Inc., una organización sin ánimo de lucro.

You might also like