[Программирование, Функциональное программирование, Софт] С добавлением лямбда-функций язык программирования Excel стал полным по Тьюрингу

Автор Сообщение
news_bot ®

Стаж: 6 лет 9 месяцев
Сообщений: 27286

Создавать темы news_bot ® написал(а)
01-Фев-2021 15:32


Microsoft теперь называет электронные таблицы Excel языком программирования, а с добавлением лямбд он стал полным по Тьюрингу.
Язык программирования считается полным по Тьюрингу, если на нём можно реализовать любой возможный алгоритм. Именно эту возможность реализуют лямбды.
Проект разработала научно-исследовательская группа Calc Intelligence в Кембриджском университете. Они давно поставили задачу превратить формулы Excel в полноценный язык программирования.

LAMBDA могут ссылаться на другие функции лямбды, с любой глубиной вложенных ссылок, даже рекурсивно. Именно это даёт возможность выразить на языке программирования Excel любое вычисление.
В данный момент лямбды доступны участникам программы бета-тестирования Excel.
Изначально исследователи из Укембриджа скептически отнеслись к идее выкатить лямбды на массовую аудиторию. Они считали, что это слишком сложная функция для среднего пользователя Excel. Но потом получили массу восторженных отзывов от тестеров — и изменили своё мнение. Оказалось, что пользователи нашли массу интересных применений для LAMBDA, причём многие из них исследователи даже не могли себе представить.
Кроме того, особые навыки требуются для написания лямбд, а не для их использования. Таким образом, программисты могут расширить сферу применения приложений Excel, не вызывая дополнительных неудобств у конечных пользователей, которые просто воспользуются результатом.
«Интересно посмотреть, как пользователи будут экспериментировать не только с лямбдами, но с типами данных и динамическими массивами. Мы считаем, что эти новые функции функционального программирования изменят подход к работе в Excel», — написал в корпоративном блоге Энди Гордон, старший научный руководитель Microsoft Research.
По мнению создателей, это открывает богатые возможности для программирования в Excel, потому что аудитория Excel «на порядок больше, чем количество всех программистов в мире на C, C++, C#, Java и Python, вместе взятых».
«В ближайшей перспективе будут реализованы полностью вложенные массивы и эффективные комбинаторы обработки массивов, такие как MAP и REDUCE, которые принимают лямбда-функции в качестве аргументов, — говорят исследователи. — Кроме того, мы надеемся определять функции не только по одной формуле, но и по целому листу с электронной таблицей, это так называемые функции листа (sheet-defined functions) или даже эластичные функции листа (elastic sheet-defined functions). С практической точки зрения, функции листа идут в ногу с потоком типичного проектирования электронных таблиц, позволяя пользователям определять более крупную функцию с помощью нескольких формул, распределённых по нескольким ячейкам».
В посте Microsoft Research от 25 января приводится больше технических деталей, которые могут быть интересны любителям математики и программистам. Есть также видео:
Извините, данный ресурс не поддреживается. :(
===========
Источник:
habr.com
===========

Похожие новости: Теги для поиска: #_programmirovanie (Программирование), #_funktsionalnoe_programmirovanie (Функциональное программирование), #_soft (Софт), #_excel, #_vba, #_jazyk_programmirovanija (язык программирования), #_lambda, #_ljambdy (лямбды), #_programmirovanie (
Программирование
)
, #_funktsionalnoe_programmirovanie (
Функциональное программирование
)
, #_soft (
Софт
)
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 22-Ноя 12:17
Часовой пояс: UTC + 5