ELI (язык программирования) - ELI (programming language)

ELI[1]
Парадигмамножество
РазработаноВай-Ми Чинг
РазработчикХанфэн Чен[2] (Rapidsoft)
Впервые появился2011; 9 лет назад (2011)
Стабильный выпуск
0.3 / 10 августа 2015 г.; 5 лет назад (2015-08-10)
Печатная дисциплинадинамичный
Язык реализацииC ++, Qt
ПлатформаIA-32, x86-64
Операционные системыКроссплатформенность: Windows, Linux, macOS
ЛицензияБесплатное ПО
Расширения имени файла.esf .eli
Интернет сайтFastarray.appspot.com
Под влиянием
APL, Q

ELI[3] это интерактивный программирование массива языковая система на основе язык программирования APL. Он выполняет большинство функций Международная организация по стандартизации (ISO) Стандарт APL ИСО / МЭК 13751: 2001, а также список для неоднородных или непрямоугольных данных, комплексных чисел, символов, временных данных и управляющих структур. Имеется возможность создания файлов сценариев для организации программ аналогично использованию #включают в C, который также предоставляет удобные данные ввод, вывод. В ELI есть словари, таблицы и базовый набор SQL -подобные высказывания. Для производительности у него есть компилятор ограничено программами с плоскими массивами.

Заменив каждый APL персонаж с одним или двумя ASCII символов, ELI сохраняет лаконичный и выразительный способ программирования массива APL по сравнению с MATLAB или же Python, ELI поощряет программирование потока данных стиль, в котором результат одной операции служит входом другой.

ELI доступен бесплатно на Windows, Linux, и macOS.

Версия 0.3

Версия ELI 0.3, описанная как стабильный выпуск, была выпущена 10 августа 2015 года. Она интегрируется с кроссплатформенной IDE, ELI Studio, которая предоставляет редактор кода со специализированными функциями для написания и загрузки кода ELI. Три добавленных виджета используются для мониторинга функций, переменных, библиотек и истории команд.

Версия 0.3 добавляет несколько новых функций.[4]

  • Как: совпадение строк
  • Матч
  • [] PP: контроль точности печати
  • ) время: мера производительности
  • []: стандартный ввод
  • Атрибуты даты и времени
  • Дескриптор файла: [] открыть, [] закрыть, [] записать и [] получить
  • Точка с запятой (;)

Пример кода

Строка ELI выполняется справа налево как цепочка операций; все, что находится справа от "//", является комментарием.

Восклицательный знак (!) - это интервальная функция. Он может генерировать вектор из n целых чисел от 1 до n.

      !101 2 3 4 5 6 7 8 9 10

Порядок выполнения ELI - справа налево, и все примитивные функции имеют одинаковый приоритет.

      5 * 2 + 10 // справа налево, 5 * (2 + 10) 60

В следующем примере функция Добавить объявлен в краткой функциональной форме. Аргументы функции могут быть скаляром или вектором.

      {add: x + y} // короткая функция formadd 1 add 2 // 1 + 23 1 add! 10 // 1+ (1..10) 2 3 4 5 6 7 8 9 10 11

В $ Оператор вращения возвращает обратный порядок вектора.

      $! 10 // обратное 10 9 8 7 6 5 4 3 2 1

Матрица 2 на 3 (или массив более высокого измерения, например, 2 3 4#!24) может быть порожден # с левым аргументом 2 3.

      2 3 #! 6 // 2-х мерный массив (матрица) 1 2 34 5 6

В первой строке под Икс задается вектор от 1 до 20. Тогда, 1 = 2 | х возвращает нечетное число Истинный и четное число Ложь. В / примитивная функция сжатия, которая поднимать ценность в Икс соответствующий Истинный значения в его левом аргументе.

      x <-! 20 // 1..20 x1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 (1 = 2 | x) / x // получаем нечетные числа из x1 3 5 7 9 11 13 15 17 19

Расширения файлов

В ELI используются два расширения файлов для обмена и совместного использования кода для разных целей: .esf и .eli.

Файл ELI с расширением .esf это файл сценария, который содержит все методы и данные. Простой способ создать файл сценария - использовать команду )из. Однако перед созданием файла сценария необходимо чистое рабочее пространство без остатка информации об отладке или ошибке. Позже команда ) fload может использоваться для перезагрузки файла сценария.

      ) из MyScript) libMyScript.esf) fload MyScriptsaved 2017.02.17 10:23:55 (gmt-5)

Файл ELI с расширением .eli - это файл рабочего пространства ELI, который содержит все, что есть в рабочем пространстве. спасти и нагрузка - это команды для файлов рабочей области.

      ) сохранить MyWorkspace) загрузить MyWorkspacesaved 2017.02.17 10:57:19 (gmt-5)

Рекомендации

  1. ^ ELI: простая система для программирования массивов
  2. ^ ELI - зеркальный сайт лаборатории Sable в Университете Макгилла
  3. ^ ELI - официальный сайт Размещено на Google App Engine
  4. ^ Чен, Ханфэн (2015). "Обзор". ELI, система программирования с использованием массивов. Fastarray.appspot.com. Получено 26 февраля 2018.

внешняя ссылка