Articulo de referencia

Euler (lenguaje de programación)

Helmut Weber"},"developers":{"wt":"[[Stanford University]] [[ETH Zurich]]"},"released":{"wt":"{{Start date and age|1965}}"},"latest release version":{"wt":""},"latest release da...

Euler es un lenguaje de programación creado por Niklaus Wirth y Helmut Weber, concebido como una extensión y generalización de ALGOL 60. [ 1 ] [ 2 ] [ 3 ] Los objetivos de los diseñadores eran crear un lenguaje que fuera:

  • Más simple, pero más flexible, que ALGOL 60.
  • Útil y procesado con una eficiencia razonable.
  • Definible con rigurosa formalidad

Las fuentes disponibles indican que Euler ya estaba operativo en 1965.

Descripción general

Euler emplea un concepto general de tipo de datos . En Euler, los arreglos , procedimientos y conmutadores no son cantidades que se declaran y nombran mediante identificadores: a diferencia de ALGOL , no son cantidades al mismo nivel que las variables . Más bien, estas cantidades están al nivel de constantes numéricas y booleanas . Por lo tanto, además de las constantes numéricas y lógicas tradicionales, Euler introduce varios tipos adicionales:

Todas las constantes se pueden asignar a variables, que tienen la misma forma que en ALGOL, pero para las que no se especifican tipos fijos: Euler utiliza tipado dinámico . Además, un procedimiento puede producir un valor de cualquier tipo cuando se ejecuta, y este tipo puede variar de una llamada al procedimiento a la siguiente .

De forma similar, los elementos de una lista pueden tener valores de cualquier tipo, y estos pueden variar de un elemento a otro dentro de la lista. Así, cuando los elementos de la lista son etiquetas, se obtiene una estructura switch. Si los elementos son procedimientos, se obtiene una lista de procedimientos, que no está disponible en ALGOL 60. Si los elementos son listas, se obtiene una estructura de árbol general.

Euler proporciona operadores generales de prueba de tipos y conversión de tipos.

Véase también

Referencias

  1. Wirth, Niklaus ; Weber, Helmut (1966). "Euler: una generalización de ALGOL y su definición formal: Parte I". Communications of the ACM . 9 (1): 13– 25.
  2. Wirth, Niklaus ; Weber, Helmut (1966). "Euler: una generalización de ALGOL y su definición formal: Parte II". Communications of the ACM . 9 (2): 89– 99.
  3. Christopher, Thomas W. (1997). Euler: Un experimento en la definición del lenguaje (PDF) (Informe). Instituto Tecnológico de Illinois. Archivado del original (PDF) el 1 de septiembre de 2006.