html текст
All interests
  • All interests
  • Design
  • Food
  • Gadgets
  • Humor
  • News
  • Photo
  • Travel
  • Video
Click to see the next recommended page
Like it
Don't like
Add to Favorites

Урок программирования для поклонников рока

В жизни каждого программиста наступает момент, когда он хочет создать свой собственный язык. Увы, обычно дело заканчивается очередным диалектом Brainfuck (переведем это название как «головомойка», хорошо?)

Но недавно один британец удумал сделать новый язык программирования Rockstar, программы на котором выглядят как самые настоящие рок-баллады. Rockstar интересен и красив, и я, даром что программист и недаром что технарь, решил его немного освоить и написать программу, которая пройдется по всем цифровым струнам моей души.

giphy

И вот что вышло:


При желании программу можно литературно перевести на русский язык:


История понятна — парня бросила девушка, он находится в глубокой печали, но под конец находит в себе силы и склеивает новую с хищнической целью, ибо его сердце отныне огрубело и он ищет только «простую любовь».

На деле программа определяет, какие из чисел простые, а какие нет. Пользователь вводит число, а программа проверяет все числа, от введенного до единицы, на их простоту.


Разумеется, из соображений пущего драматизма и лиричности в программе очень много лишних вычислений и переменных.
Например, строка Sadness was unfamiliar feeling i was lauged on it until now определяет переменную Sadness как 71362253, а строки my life is dark it doomed and crushed Girl is left me spirit now alone присваивают переменной my life значение 42637, а переменной Girl — 42635. Все это нужно для того, чтобы отнять Girl из my life и получить Sadness = 2.

Так что лаконичность — это точно не про Rockstar. Rockstar хорош тем, что это полноценный язык программирования высокого уровня, в котором можно написать полезные, но главное — чертовски красивые и поэтичные программы. И он только-только начал развиваться, так что в будущем его возможности, надеемся, возрастут.

Хотелось бы, конечно, чтобы в язык были введены массивы. Например, это можно сделать с помощью ключевых слов «has» и «pieces», тогда строчкой my soul has a million pieces можно было бы объявить массив my soul с количеством элементов, заданных переменной a million. А обращение к массиву, пожалуй, можно реализовать через «part of», тогда Sorrow is Large part of my soul — передаст в переменную Sorrow элемент my soul с номером Large.

Еще, пожалуй, не хватает базовых математических функций, в первую очередь экспоненты и тригонометрии. С тригонометрией все просто — Sin сам по себе лиричен и точно про рок, а из него при желании и все остальную тригонометрию вытянуть можно. А еще, если это не оскорбит чувства рокеров, можно определить тригонометрическую функцию tango.

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

Также с помощью Rockstar можно попытаться выяснить тайный смысл песен всяких там AC/DC, Manowar и прочих начинающих программистских коллективов. Но увы — с синтаксисом языка рока они совершенно не дружат, хотя и пытаются местами. Все говорит о том, что из программиста можно без особого труда сделать рокера, а наоборот — не получится.
Читать дальше
Twitter
Одноклассники
Мой Мир

материал с nplus1.ru

1

      Add

      You can create thematic collections and keep, for instance, all recipes in one place so you will never lose them.

      No images found
      Previous Next 0 / 0
      500
      • Advertisement
      • Animals
      • Architecture
      • Art
      • Auto
      • Aviation
      • Books
      • Cartoons
      • Celebrities
      • Children
      • Culture
      • Design
      • Economics
      • Education
      • Entertainment
      • Fashion
      • Fitness
      • Food
      • Gadgets
      • Games
      • Health
      • History
      • Hobby
      • Humor
      • Interior
      • Moto
      • Movies
      • Music
      • Nature
      • News
      • Photo
      • Pictures
      • Politics
      • Psychology
      • Science
      • Society
      • Sport
      • Technology
      • Travel
      • Video
      • Weapons
      • Web
      • Work
        Submit
        Valid formats are JPG, PNG, GIF.
        Not more than 5 Мb, please.
        30
        surfingbird.ru/site/
        RSS format guidelines
        500
        • Advertisement
        • Animals
        • Architecture
        • Art
        • Auto
        • Aviation
        • Books
        • Cartoons
        • Celebrities
        • Children
        • Culture
        • Design
        • Economics
        • Education
        • Entertainment
        • Fashion
        • Fitness
        • Food
        • Gadgets
        • Games
        • Health
        • History
        • Hobby
        • Humor
        • Interior
        • Moto
        • Movies
        • Music
        • Nature
        • News
        • Photo
        • Pictures
        • Politics
        • Psychology
        • Science
        • Society
        • Sport
        • Technology
        • Travel
        • Video
        • Weapons
        • Web
        • Work

          Submit

          Thank you! Wait for moderation.

          Тебе это не нравится?

          You can block the domain, tag, user or channel, and we'll stop recommend it to you. You can always unblock them in your settings.

          • nplus1.ru
          • домен nplus1.ru

          Get a link

          Спасибо, твоя жалоба принята.

          Log on to Surfingbird

          Recover
          Sign up

          or

          Welcome to Surfingbird.com!

          You'll find thousands of interesting pages, photos, and videos inside.
          Join!

          • Personal
            recommendations

          • Stash
            interesting and useful stuff

          • Anywhere,
            anytime

          Do we already know you? Login or restore the password.

          Close

          Add to collection

             

            Facebook

            Ваш профиль на рассмотрении, обновите страницу через несколько секунд

            Facebook

            К сожалению, вы не попадаете под условия акции