LiveScript - LiveScript

LiveScript
Парадигмамультипарадигма, функциональный, объектно-ориентированный
РазработаноДжереми Ашкенас, Сатоши Мураками, Георгий Захариев
РазработчикДжереми Ашкенас, Сатоши Мураками, Георгий Захариев
Впервые появился2011; 9 лет назад (2011)
Стабильный выпуск
LiveScript 1.6.0 / 24 августа 2018 г.; 2 года назад (2018-08-24)[1]
Печатная дисциплинадинамичный, слабый
Операционные системыКроссплатформенность
ЛицензияМассачусетский технологический институт
Расширения имени файла.ls
Интернет сайтlivescript.сеть
Под влиянием
JavaScript, Haskell, CoffeeScript, F #

LiveScript это функциональный язык программирования который компилирует к JavaScript. Он был создан Джереми Ашкенас - создатель CoffeeScript - наряду с Сатоши Мурамаки, Георгием Захариевым и многими другими.[2] Не следует путать с JavaScript (в течение короткого периода в 1990-е гг. LiveScript было названием JavaScript).[3]

Синтаксис

LiveScript является косвенным потомком CoffeeScript.[4] Следующее Привет, мир программа написана на LiveScript, но также совместима с Coffeescript:

привет = ->  консоль.бревно 'Привет, мир!'

При вызове функции можно использовать пустые скобки, Привет(), LiveScript обрабатывает восклицательный знак как односимвольное сокращение для вызовов функций с нулевыми аргументами: Привет!

LiveScript вводит ряд других несовместимых идиом:

Изменение имени

Во время компиляции парсер LiveScript неявно преобразует чехол для шашлыка (пунктирные переменные и имена функций) на верблюд.

привет-мир = ->  консоль.бревно 'Привет, мир!'

С этим определением действительны оба следующих вызова. Однако рекомендуется использовать тот же синтаксис, обозначенный пунктиром.

привет мир! привет мир!

Это не мешает разработчикам явно использовать camelcase или использовать змея. Тем не менее, пунктирное обозначение часто встречается в идиоматическом LiveScript.[5]

Трубы

Как и ряд других языков функционального программирования, таких как F # и Эликсир, LiveScript поддерживает оператор канала, |> который передает результат выражения слева от оператора в качестве аргумента к выражению справа от него. Обратите внимание, что в F # переданный аргумент является последним аргументом, а в Эликсир это первое.

"Привет!" |> извлекать выгоду |> консоль.бревно#> Здравствуйте!

Операторы как функции

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

111 |> (+) 222# > 333(+) 1 2# > 3

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

  1. ^ «Релизы LiveScript». Получено 6 октября 2018.
  2. ^ "Страница авторов LiveScript". Получено 20 июн 2015.
  3. ^ "Группа сообщества веб-образования W3". Получено 20 июн 2015.
  4. ^ http://livescript.net/
  5. ^ http://www.preludels.com/

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