Программист разработал язык программирования под стиль песен 80-х
Новости
Язык Rockstar позволяет создавать программы, которые выглядят как песни 80-х годов. Разработчик описал все атрибуты и показал, как выглядит «звёздный» код.
7К открытий7К показов
Разработчик Дилан Битти разработал и подробно описал динамический типизированный язык программирования Rockstar для создания программ, похожих на песни. На это его вдохновили не только лирические рок-композиции 1980-х годов, но и менеджеры по персоналу, которые стремятся найти «рок-звёзд» среди разработчиков.
Если язык станет популярным, Дилан планирует выпустить стикеры «Certified Rockstar Developer».
Спецификация Rockstar
Использовать комментарии настоятельно не рекомендуется, но если потребуется, то заключать их следует в круглые скобки. Применять скобки в арифметических выражениях нельзя.
Переменные
Язык Rockstar предлагает два способа объявлять переменные:
- Классические, включающие одно из слов:
a
,an
,the
илиmy
. После программист указывает уникальное имя прописными буквами латинского алфавита. - Нарицательные. Начинаются как имена собственные — с большой буквы. Можно использовать, чтобы написать название любимых композиций (
Tommy
,Gina
,Doctor Feelgood
) или создавать налоговые ставки, идентификаторы клиента.
Так же как и в Ruby, Python и VBScript, нет необходимости заранее объявлять переменные благодаря динамической типизации. Местоимения ссылаются на последнюю использованную переменную.
Типы переменных
В Rockstar используются переменные, схожие с системой ECMAScript:
- Mysterious (заменяет undefined) — любые переменные без конкретного значения.
- Null — false или ноль (слова
nothing
,nowhere
иnobody
). - Boolean — логический тип (слова
right
,yes
,ok
;wrong
,no
,lies
). - Number — хранятся посредством цифрового типа DEC64.
- String — последовательность 16-битных целых значений в кодировке UTF-16, которые не сопровождаются знаком.
- Object — комплекс свойств, аналогичных ECMAScript.
Литералы и присваивания
Строковые литералы в Rockstar заключают в двойные кавычки. Одиночная кавычка считается буквой алфавита. Числовые литералы записывают как десятичные числа. Присваивание обозначается комбинацией ключевых слов put/into
.
Для арифметических действий используют plus
, minus
, times
(умножение), over
(деление), а также слова with
, without
, of
и by
, повторяющие функции.
Арифметический пример:
Put the whole of your heart into my hand
— умножитьyour heart
наwhole
и назначить результатinto my hand
.
Rockstar использует специфическую языковую деталь — «поэтический литерал», с помощью которого можно обозначить переменную и заодно «выразить непреодолимую тоску». Например, для ключевых слов true
, false
, nothing
, nobody
и nowhere
поэтическое присваивание представляет собой одну строку, состоящую из имени переменной, ключевого слова is
и литерала требуемого значения:
My heart is true
— инициализирует переменнуюmy heart
логическим значениемtrue
.Tommy is nobody
— инициализирует переменнуюTommy
значениемnull
с помощью псевдонимаnobody
.
Примеры
FizzBuzz в минималистском варианте Rockstar, с отступами блоков для ясности:
То же самое в идиоматическом Rockstar, с использованием поэтических литералов и без отступов:
Уже есть возможность преобразовать Rockstar в JavaScript.
В 2017 году появился ещё один «шуточный» язык программирования Motes, основанный на эмодзи. Для его освоения потребуется скачать нужные библиотеки и установить редактор, поддерживающий эмодзи.
7К открытий7К показов