Ваш начальник просить вас написати програму "Привіт світ". Оскільки ви платите за рядки коду, ви хочете зробити його максимально складним. Однак якщо ви просто додасте дурницькі рядки, або очевидно марні або запаморочливі речі, ви ніколи не отримаєте це через перегляд коду. Тому викликом є:
Напишіть програму "привіт світ", яка є максимально складною за умови, що ви можете дати "виправдання" для кожної складності в коді.
Необхідна поведінка програми - просто вивести один рядок "Hello world" (без лапок, але з новим рядком в кінці), а потім успішно вийти.
"Обгрунтування" включає:
- сумісність buzzword ("Сучасне програмне забезпечення орієнтоване на об'єкти!")
- загальноприйняті хороші практики програмування ("Усі знають, що вам слід розділити модель та перегляд")
- ремонтопридатність ("Якщо ми зробимо це таким чином, ми можемо легше зробити XXX пізніше")
- і звичайно будь-яке інше обґрунтування, яке ви можете уявити, використовуючи (в інших ситуаціях) для реального коду.
Очевидно, дурні виправдання не приймаються.
Крім того, ви повинні "обґрунтувати" свій вибір мови (тому, якщо ви вибрали притаманну багатослівну мову, вам доведеться обґрунтувати, чому це "правильний" вибір). Веселі мови, такі як Unlambda або Intercal, неприйнятні (якщо ви не можете дати дуже хороше обґрунтування для їх використання).
Оцінка кваліфікованих записів обчислюється так:
- 1 бал за кожне твердження (або будь-який еквівалент викладу на вашій мові на вибір).
- 1 бал за кожне визначення функції, типу, змінної тощо (за винятком основної функції, де це застосовується).
- 1 бал за кожен оператор використання модуля, файл включає директиву, простір імен за допомогою оператора тощо.
- 1 бал за кожен вихідний файл.
- 1 бал за кожне необхідне переадресаційне оголошення (якщо ви могли позбутися від нього шляхом перестановки коду, ви повинні "виправдати", чому вибране вами розташування є "правильним").
- 1 бал за кожну структуру управління (якщо, поки, для тощо)
Пам’ятайте, що вам потрібно «виправдовувати» кожен окремий рядок.
Якщо обрана мова є досить різною, що ця схема не може бути застосована (і ви можете дати хороше "обгрунтування" для її використання), будь ласка, запропонуйте метод підрахунку, який найбільше нагадує вищезгадану для вашої мови вибору.
Учасників конкурсу просять підрахувати бал свого запису і записати його у відповідь.