- Dylan (lenguaje de programación)
-
Dylan (lenguaje de programación)
Contenido
Introducción
El lenguaje de programación Dylan es un lenguaje funcional y orientado a objetos. Fue creado a principios de los 90 por iniciativa de Apple Computer.
Dylan es, en esencia, una versión depurada y simplificada de CLOS, un sistema de programación orientado a objetos desarrollado en Common Lisp. En Dylan, la mayoría de las entidades (incluyendo los tipos de datos primitivos, métodos y clases) son objetos de “primera clase”. Los programas pueden ser escritos desde una forma fuertemente tipeada a una forma débilmente tipeada. Dylan soporta herencia múltiple, polimorfismo, palabras clave, macros, y muchas otras características avanzadas.
La meta de Dylan es ser un lenguaje apropiado para el desarrollo de software comercial.
Historia
Dylan fue creado a principios de los años 90 por iniciativa de Apple Computer. Durante el desarrollo, se intentó usarlo con los ordenadores de Apple Newton, pero la implementación del lenguaje no estuvo listo a tiempo, y Newton usó una combinación de C y el lenguaje de programación NewtonScript (desarrollado por Walter Smith) en su lugar. Apple concluyó su desarrollo de Dylan en 1995.
Otros dos grupos contribuyeron al diseño del lenguaje y desarrollaron implementaciones: la compañía de software ‘’’Harlequin’’’ lanzó un entorno de desarrollo integrado para Microsoft Windows y ‘’’Carnegie Mellon University’’’ lanzó un compilador para sistemas Unix. Ambas implementaciones son hoy en día open source (de código abierto) y son mantenidas por un grupo de voluntarios.
El lenguaje Dylan tuvo como nombre en clave ‘Ralph’. James Joaquin eligió el nombre Dylan por “DYnamic LANguage” (lenguaje dinámico).
Sintaxis
En un principio, Dylan usaba la sintaxis Lisp, que está basada en expresiones simbólicas:
(bind ((radio 5) (circunferencia (* 2 $pi radio))) (if (> circunferencia 42) (format-out "¡Es un círculo grande! c es %=" circunferencia) (format-out "Es un círculo. c es %=" circunferencia)))
El lenguaje fue entonces cambiado para usar una sintaxis al estilo Algol, diseñada por Mike Kahl, la cual sería más familiar para los programadores de C.
begin let radio = 5; let circunferencia = 2 * $pi * radio; if (circunferencia > 42) format-out("¡Es un círculo grande! c = %=", circunferencia); else format-out("Es un círculo c es %=", circunferencia); end if end
Al igual que otros lenguajes de programación funcionales, la última evaluación en una función es el valor de retorno. Esto quiere decir que el siguiente código es una función válida, devolviendo uno de dos posibles valores para una llamada a la función:
define method a_number(isTen :: <string>) if (isTen = "10") 10; else 11; end if; end method;
Enlaces externos
Categoría: Lenguajes de programación
Wikimedia foundation. 2010.