ПОСЛЕДНИЕ НОВОСТИ

Язык программирования Rockstar, как рок-песни 80-х

Язык программирования Rockstar, как рок-песни 80-х
Язык программирования Rockstar, как рок-песни 80-х

 

Британский разработчик Дилан Битти (Dylan Beattie) создал язык программирования Rockstar, основанный на рок-песнях 80-х. Чтобы писать на нём, нужно знать тексты хитов конца прошлого века. Описание языка и спецификации Битти опубликовал на GitHub.

По словам разработчика, Rockstar «создан для разработки программ, которые в то же время являются текстами песен». Битти рассказал, что придумал язык, чтобы менеджеры по подбору персонала перестали называть разработчиков «рок-звёздами» и указывать это в вакансиях.

    Потому что если мы сделаем Rockstar реальным (и полностью бессмысленным) языком программирования, то рекрутёры больше не смогут говорить о «рок-звёздах разработки». Кроме того, это забавно.

Разработчик отметил, что если его язык начнут использовать, то можно сделать стикеры. Потому что «кто не хочет наклейку на ноутбук с надписью: „сертифицированный разработчик-рок-звезда“».

Битти подробно описал синтаксис языка. По его словам, Rockstar даёт программистам «беспрецедентный уровень поэтической вольности», когда речь идёт «о композиции и структуре их программ».

В отличие от других языков, использовать комментарии в Rockstar «категорически не рекомендуется». Но если всё же хочется, то разработчик советует использовать круглые скобки: в этом случае их не получится использовать для сложных арифметических выражений.

Кроме того, не стоит пытаться быть кратким.

    Это рок-н-ролл: аудитория сама найдёт свой собственный смысл.
    из спецификаций языка программирования Rockstar

Язык также поддерживает переменные. Есть два способа объявлять и использовать их в Rockstar. «Классические» переменные начинаются с одного из ключевых слов: a, an, the или my. После этого можно указать уникальное имя переменной, которое должно быть набрано исключительно прописными буквами от a до z.

«Нарицательные» переменные должны называться как имена собственные и начинаться с большой буквы. Они могут содержать столько пробелов, сколько больших букв в них используется.

Такие переменные разработчики смогут использовать для создания идентификаторов клиентов, налоговых ставок или дистанций в километрах. В этом случае рекомендуется использовать названия известных песен 80-х, например, Tommy, Gina, Doctor Feelgood, Mister Crowley, Kayleigh, Tom Sawyer, Billie Jean and Janie.

Переменные не нужно объявлять заранее — они динамически типизируются. А с помощью местоимений он, она, оно и других можно сослаться на последнюю используемую переменную.

Также в языке есть типы переменных, которые базируются на системе ECMAScript, однако значение undefined «звучало не слишком рок-н-ролльно», поэтому его заменили на mysterious («загадочный»).

Типы переменных в языке Rockstar

    Mysterious («загадочный») — значение любой переменной, у которой нет значения обозначается словом mysterious.
    Null («пустой») — пустой тип. Равен нулю или false («ложь»). Ключевые слова nothing («ничто»), nowhere («нигде») и nobody («никто») распознаются как псевдонимы null.
    Boolean («булево») — логический тип имеющий два значения: true («правда») или false («ложь»). Right («верный»), Yes («да») и Ok являются псевдонимами True. Wrong («неверный»), No («нет») и Lies («враньё») являются псевдонимами False.
    Number («число») — числа в Rockstar хранятся с использованием цифрового типа DEC64.
    String («строка») — строки в Rockstar представляют собой последовательности 16-битных целых значений без знака в кодировке UTF-16.
    Object («объект») — совокупность названных свойств данных, как в ECMAScript.

Одиночная кавычка в Rockstar считается как буква алфавита. По словам разработчика, это звучит необычно «до тех пор, пока программисты не вспомнят, что „I ain't talkin' 'bout love“ («Я не говорю о любви») — идеальное рок-н-ролльное предложение».

Арифметические операции в Rockstar выполняются с помощью операторов plus («плюс»), minus («минус») , times («раз» — умножение), over («через» — деление) и ключевых слов with («с»), without («без»), of и by, которые дублируют функции.
Примеры арифметики в Rockstar

    Put the whole of your heart into my hand («Положи всё сердце в мою руку») — умножить «твоё сердце» на «всё» и назначить результат в «мои руки»
    My world is nothing without your love («Мой мир — ничто без твоей любви») — Создать «мой мир» с результатом вычитания «твоей любви» из нуля

Кроме того, одна из особенностей Rockstar — «поэтические литералы», позволяющие выразить «чудовищную тоску и обозначить переменную». Например, с помощью них присваивание переменной значения 100 выглядит как строка из рок-хита 80-х — «Tommy was a lovestruck ladykiller» («Томми был по уши влюблённым сердцеедом»).

Пример примитивной задачки FuzzBuzz на языке Rockstar

Язык программирования Rockstar, как рок-песни 80-х
Язык программирования Rockstar, как рок-песни 80-х

Битти также описал несколько идей, например, раздавать стикеры «сертифицированный разработчик Rockstar» всем, кто сможет написать хоть одну строку на языке, а также генерировать счёт использования текстов песен в коде.

В декабре 2016 года студенты петербуржского колледжа создали язык программирования «для гопников» YoptaScript

Поделитесь информацией с друзьями!

Просто нажми на кнопки соцсетей внизу!