BETA (язык программирования)

редактировать
BETA
Paradigm Объектно-ориентированный
Разработан , Биргером Мёллер-Педерсен, Кристен Найгаард
Веб-сайтbeta.cs.au.dk
Под влиянием
Simula

БЕТА - это чистый объектно-ориентированный язык, возникший в "Скандинавской школе" в объектно-ориентированном Страна, где был разработан первый объектно-ориентированный язык Simula. Среди его примечательных особенностей он представил вложенные классы и унифицированные классы с процедурами в так называемые шаблоны.

Содержание
  • 1 Возможности
    • 1.1 Технический обзор
    • 1.2 Шаблоны
    • 1.3 Hello world!
  • 2 Дополнительная литература
  • 3 Ссылки
  • 4 Внешние ссылки
Возможности

Технический обзор

С технической точки зрения BETA предоставляет несколько уникальных функций. Классы и процедуры объединены в одну концепцию: a. Также классы определяются как свойства / атрибуты объектов. Это означает, что класс не может быть создан без явного контекста объекта. Следствием этого является то, что BETA поддерживает вложенные классы. Классы можно определять виртуально, как виртуальные методы в большинстве объектно-ориентированных языков программирования. Виртуальные сущности (такие как методы и классы) никогда не перезаписываются; вместо этого они переопределяются или специализируются.

BETA поддерживает объектно-ориентированный подход к программированию и имеет обширные возможности для процедурного и функционального программирования. Он имеет мощные механизмы абстракции для поддержки идентификации объектов, классификации и композиции. BETA - это язык со статической типизацией, такой как Simula, Eiffel и C ++, при этом большая часть проверки типов выполняется во время компиляции. BETA стремится достичь оптимального баланса между проверкой типов во время компиляции и проверкой типов во время выполнения.

Паттерны

Основная и особенная особенность языка - это концепция паттернов. В другом языке программирования, таком как C ++, можно было бы иметь несколько классов и процедур. BETA выражает обе эти концепции с помощью шаблонов.

Например, простой класс в C ++ будет иметь форму

class point {int x, y; };

В БЕТА-версии один и тот же класс может быть представлен шаблоном

point: (# x, y: @integer #)

То есть класс с именем point будет иметь два поля, x и y, из введите целое число. Символы (# и #) обозначают шаблоны. Двоеточие используется для объявления шаблонов и переменных. Знак @ перед целочисленным типом в определениях полей указывает, что это целочисленные поля, а не, напротив, ссылки, массивы или другие шаблоны.

В качестве другого сравнения, процедура в C ++ может иметь вид

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

В БЕТА-версии такую ​​функцию можно было бы написать с использованием шаблона

max: (# x, y, z: @integer enter (x, y) do (if x>= y // True, then x ->z else y ->z if) exit z #)

x, y и z - локальные переменные. Ключевое слово enter определяет параметры ввода для шаблона, а ключевое слово exit определяет результат функции. Между ними ключевое слово do ставит префикс последовательности операций, которые необходимо выполнить. Условный блок разделяется символом (if и if), то есть, если ключевое слово становится частью открывающей и закрывающей круглых скобок. Истинность проверяется с помощью // Истина внутри блока if. Наконец, оператор присваивания ->присваивает значение с левой стороны переменной с правой стороны.

Привет, мир!

Этот фрагмент печатает стандартную строку «Hello world!» :.

(# do 'Hello world!' ->PutLine #)
Дополнительная литература
  • Оле Лерманн Мадсен, Биргер Мёллер-Педерсен, Кристен Найгаард: объектно-ориентированное программирование на языке программирования BETA, [2]
  • Бент Бруун Кристенсен, Оле Лерманн Мадсен, Биргер Мёллер-Педерсен: Когда, почему и почему не BETA Programming Language, ACM History of Programming Languages ​​III, Conference, San Diego 2007, [3]
Ссылки
Внешние ссылки
Последняя правка сделана 2021-05-11 03:20:34
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте