Язык программирования для всех

Если ты хочешь создать более простой язык, чем Basic или Julia, решение происходит через реактивное программирование и даже через... электронная таблица!

В статье, опубликованной в 2009 году под названием Spreadsheet Programming, три автора, работающие на Microsoft и Университет Орегона, объяснили, как пользоваться таблицей, это на самом деле программирование ...

  1. Ячейки, в которые вводятся значения, являются входами.
  2. Ячейки, отображающие результат без ссылок других, являются выходами.
  3. Те, которые содержат формулы, ссылающиеся на другие ячейки и сами упоминаемые в формулах, являются инструкциями программы.
  4. Есть даже итерации: если формула ссылается на строку или столбец, она применяется к каждой ее ячейке повторно.

Programmer avec un tableur

Тогда авторы делают удивительные выводы...

Электронные таблицы - самые используемые системы программирования в мире...

Программист в электронной таблице, это делают 11 миллионов американцев, в то время как программистов, использующих процедурный или функциональный язык (цифры того времени), всего 2,75 миллиона.

Первая идея, которая приходит в голову, что это хорошо, но электронная таблица, она служит для финансовых расчетов, а программирование - гораздо более общее, это относится ко всем областям существования...
Но на самом деле это не так. С помощью электронной таблицы можно реализовать множество интерактивных приложений, причем в любой области.
Существуют бесплатные версии электронных таблиц в JavaScript, и даже одна, которая держится в тридцати строках кода (используется для создания изображения выше, с произвольной таблицей стилей).
Сайт Wijmo, который предлагает один из этих виджетов, представляет нам список приложений .

Recette de cuisine dans un tableur

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

Видно, что, выбирая HTML 5 для интерфейса, ты получаешь дополнительный инструмент программирования - электронную таблицу. Можно уменьшить требуемое для пользователя усилие, предоставив ему задачу заполнения введённых ячеек, при этом все формулы заранее определены в приложении (что на самом деле делает большинство предустановленных листов стилей, предлагаемых публике).

То, как работает электронная таблица, переводится на язык программирования через парадигму реактивного программирования. Последняя просит программиста описать проблему в формулах и оставляет вычислительную работу интерпретатору. Напротив, классическое императивное программирование требует от программиста поэтапно описывать, какую обработку необходимо выполнить для решения проблемы.
Реактивное программирование часто используется в базах данных: действительно, таблица BDD состоит из строк и колонок, например, электронной таблицы, и можно выполнять глобальные операции в ряду .

Вывод заключается в том, что если ты хочешь увеличить количество программистов, а создать максимально доступный язык программирования, решение - создать электронную таблицу.

Вы можете создать собственную таблицу JavaScript, следуя инструкциям этого учебника. Другой сайт предлагает тебе все функции Excel, в JS. Но вместо включения всех математических функций замените их графическими виджетами. Математических или финансовых пользователей мало.

Денис Суро 28 февраля 2014 года. Обновлено 2/3/2015.