Articulo de referencia

BETA (lenguaje de programación)

BETA es un lenguaje puramente orientado a objetos originado en la "Escuela Escandinava" de programación orientada a objetos, donde se desarrolló Simula , el primer lenguaje orie...

BETA es un lenguaje puramente orientado a objetos originado en la "Escuela Escandinava" de programación orientada a objetos, donde se desarrolló Simula , el primer lenguaje orientado a objetos . [ 1 ] Entre sus características más destacadas, introdujo clases anidadas y unificó clases con procedimientos en los llamados patrones.

Ha estado en desarrollo desde 1976, con implementaciones conocidas desde 1986, por Kristen Nygaard junto con Bent Bruun Kristensen, Ole Lehrmann Madsen y Birger Møller-Pedersen , en la Universidad de Oslo .

El proyecto está inactivo desde octubre de 2020. [ 2 ]

Características

Descripción general técnica

Desde una perspectiva técnica, BETA ofrece varias características únicas. Las clases y los procedimientos se unifican bajo un concepto: un patrón . Además, las clases se definen como propiedades o atributos de los objetos. Esto significa que una clase no puede instanciarse sin un contexto de objeto explícito. Como consecuencia, BETA admite clases anidadas . Las clases pueden definirse virtualmente, al igual que los métodos virtuales en la mayoría de los lenguajes de programación orientados a objetos. Las entidades virtuales (como métodos y clases) nunca se sobrescriben; en su lugar, se redefinen o se especializan.

BETA admite la perspectiva orientada a objetos en la programación y cuenta con herramientas integrales para la programación procedimental y funcional. Posee potentes mecanismos de abstracción para la identificación, clasificación y composición de objetos. BETA es un lenguaje de tipado estático, al igual que Simula, Eiffel y C++ , con la mayor parte de la verificación de tipos realizada en tiempo de compilación. [ 1 ] BETA busca lograr un equilibrio óptimo entre la verificación de tipos en tiempo de compilación y en tiempo de ejecución.

Patrones

Una característica importante y peculiar del lenguaje es el concepto de patrones. En otros lenguajes de programación, como C++ , se utilizan varias clases y procedimientos. BETA expresa ambos conceptos mediante patrones.

Por ejemplo, una clase simple en C++ tendría la forma

punto de clase { int x , y ; };

En BETA, la misma clase podría estar representada por el patrón

punto : ( # x , y : @ entero # )

Es decir, una clase llamada `point` tendrá dos campos, `x` e `y` , de tipo entero . Los símbolos `#` y `#` introducen patrones. Los dos puntos se utilizan para declarar patrones y variables. El signo `@` que precede al tipo entero en las definiciones de campo especifica que se trata de campos enteros y no, por el contrario, de referencias, matrices u otros patrones.

Como otra comparación, un procedimiento en C++ podría tener la forma

int max ( int ​​x , int y ) { if ( x >= y ) { return x ; } else { return y ; } }

En BETA, dicha función podría escribirse utilizando un patrón.

máximo : ( # x , y , z : @ entero entrar ( x , y ) hacer ( si x >= y // Verdadero entonces x -> z sino y -> z si ) salir z # )

Las variables x , y y z son locales. La palabra clave `enter` especifica los parámetros de entrada del patrón, mientras que la palabra clave ` exit` especifica el resultado de la función. Entre ambas, la palabra clave `do` antepone la secuencia de operaciones a realizar. El bloque condicional está delimitado por `(if e if)` , es decir, la palabra clave `if` pasa a formar parte del paréntesis de apertura y cierre. La veracidad se comprueba mediante `// True` dentro de un bloque `if`. Finalmente, el operador de asignación `- >` asigna el valor de su lado izquierdo a la variable de su lado derecho.

¡Hola Mundo!

Este fragmento imprime la línea estándar "¡Hola mundo!" :

(# hacer '¡Hola betas!'->PutLine #) 

Lecturas adicionales

  • Ole Lehrmann Madsen, Birger Møller-Pedersen, Kristen Nygaard: Programación orientada a objetos en el lenguaje de programación BETA, El sistema Mjølner: Libros
  • Bent Bruun Kristensen, Ole Lehrmann Madsen, Birger Møller-Pedersen: El cuándo, el por qué y el por qué no del lenguaje de programación BETA, ACM History of Programming Languages ​​III, Conferencia, San Diego 2007,Archivado el 11 de febrero de 2017 en Wayback Machine.

Referencias

  1. 1 2 Fuente:Ole Lehrmann Madsen: una visión general de BETA
  2. "Página principal del lenguaje BETA " . beta.cs.au.dk.
  • Sitio web oficial
  • gbeta BETA generalizada