Программист разработал язык программирования под стиль песен 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К показов





