stringtranslate.com

Эйлер (язык программирования)

Eulerязык программирования, созданный Никлаусом Виртом и Хельмутом Вебером, задуманный как расширение и обобщение ALGOL 60. [1] [2] [3] Целью разработчиков было создание языка, который:

Имеющиеся источники указывают на то, что Эйлер уже функционировал к 1965 году.

Обзор

Эйлер использует общую концепцию типа данных . В Эйлере массивы , процедуры и переключатели не являются величинами, которые объявляются и именуются идентификаторами: в отличие от ALGOL , они не являются величинами на том же уровне, что и переменные . Скорее, эти величины находятся на уровне числовых и булевых констант . Таким образом, помимо традиционных числовых и логических констант, Эйлер вводит несколько дополнительных типов:

Все константы могут быть назначены переменным, которые имеют ту же форму, что и в ALGOL, но для которых не указаны фиксированные типы: Эйлер использует динамическую типизацию . Кроме того, процедура может производить значение любого типа при выполнении, и этот тип может меняться от одного вызова процедуры к другому .

Аналогично, элементы списка могут иметь значения любого типа, и они могут различаться от элемента к элементу в списке. Таким образом, когда элементы списка являются метками, получается переключатель. Если элементы являются процедурами, получается список процедур, который недоступен в ALGOL 60. Если элементы сами являются списками, получается общая древовидная структура.

Эйлер предоставляет общие операторы проверки типов и преобразования типов.

Смотрите также

Ссылки

  1. ^ Вирт, Никлаус ; Вебер, Хельмут (1966). «Эйлер: обобщение АЛГОЛа и его формальное определение: Часть I». Сообщения ACM . 9 (1): 13–25.
  2. ^ Вирт, Никлаус ; Вебер, Хельмут (1966). «Эйлер: обобщение АЛГОЛа и его формальное определение: Часть II». Сообщения ACM . 9 (2): 89–99.
  3. ^ Кристофер, Томас В. (1997). Эйлер: Эксперимент по определению языка (PDF) (Отчет). Иллинойсский технологический институт. Архивировано из оригинала (PDF) 1 сентября 2006 г.

Внешние ссылки