Вы должны выполнить четыре задания на языке, который:
- не должен возвращать результаты * при поиске на этом сайте (codegolf.se), например, ToffeeScript ;
- должна иметь страницу, указанную в Esolang , Rosetta Code или Wikipedia ;
- быть отдельным языком, а не отдельной версией (например, python 2.1 был бы действительным, если бы python удовлетворял первым двум критериям).
* Исключением является этот хит для ToffeeScript.
Четыре задачи, которые вы должны выполнить:
1) Напишите описание / продвижение выбранного вами языка (<140 символов).
2) Печать "Hello World! Это написано в <programming language name>
."
3) Распечатать все нечетные числа в указанном пользователем диапазоне. (например, 20 25
должен возвращаться стандартный ввод 21 23 25
).
4) Напишите программу, которая, по вашему мнению, лучше всего демонстрирует интересную особенность выбранного вами языка.
Подсчет очков:
- Это конкурс популярности
- Бонус 10 баллов, если они указаны в двух из вышеперечисленных каталогов, 25, если во всех трех.
- Счет представляет собой сумму голосов, полученных в полночь по UTC 1 июля 2015 года, плюс бонусы.
Разъяснения:
- Задача 1) может быть программой с возможностью твиттинга, но простой текст также приемлем.
- Многие языки не имеют существующего переводчика; решения для них хороши, но будут приняты добросовестно.
- Второй критерий выбора языка запрещает страницы, даты создания которых после этого поста. Если для данного языка X решение проблемы существует в Rosetta Code, но у него где-то нет отдельной страницы, оно все равно приемлемо.
popularity-contest
Киран Хант
источник
источник
and/or
;)Ответы:
Bloop
Бонус: 10
Есть страницы для BlooP на Esolangs и Wikipedia . Поиск PPCG для BlooP не возвращает результатов. Если вы чувствуете себя особенно невменяемым, вы можете попробовать его на repl.it .
Задача 1: Твит
При этом используются стандартные стили Twitter, включая хэштеги и смайлики. Это подойдет любому пользователю Twitter. *
Задача 2: Привет, мир
Как видите, это основной язык игры в гольф. *
Задача 3: Нечетные числа
В BlooP доступны только операторы: assignment (
<=
), сложение, умножение, больше чем, меньше и равно. Из-за его болезненно многословного синтаксиса на самом деле довольно легко сказать, что происходит, даже без глубокого понимания языка.Задача 4: Интересное
Примечание: мой фрагмент для этой задачи может быть изменен, если я придумаю что-нибудь более интересное.
Вот числа Фибоначчи.
* Может не быть правдой
источник
Монд *
Попробуйте это в вашем браузере
Полное раскрытие : я в какой-то степени участвовал в процессе разработки и проектирования Mond и лично реализовал несколько основных языковых функций, включая определяемые пользователем операторы, которые продемонстрированы в задачах 3 и 4.
Задание 1
Оператор конвейера (
|>
) является синтаксическим сахаром, который преобразует вызов функции с правой стороны в вызов функции со значением в левой части, вставленным в качестве первого аргумента.foo |> bar()
так же, какbar( foo )
.Задача № 2
Задача № 3
Код для этой задачи предполагает несколько вещей:
0-9
Попробуй здесь
Задача № 4
Эта задача демонстрирует пользовательские операторы , которые позволяют программисту определять любой произвольный оператор (если он еще не существует), как функцию, и использовать его так же, как любой другой оператор. Они бывают одинарные и бинарные.
Попробуй это здесь .
источник
JQ
Ни один из 14 результатов на сайте codegolf.se не касается языка. (
jq
(и заглавные варианты), кажется, часто встречается в Pyth.)На Rosetta Code есть категория jq .
Вы можете попробовать это онлайн, но некоторые из примеров ниже нуждаются в последней версии 1.5.
Задача 1: Твит
(Бесстыдно вычитал первый абзац со своего сайта.)
Задача 2: Привет, мир
Задача 3: Нечетные числа
Задача 4: Интересное
Файл ~ / .mozilla / firefox / *. Default / extensions.json, содержащий информацию об установленных расширениях Firefox, содержит 0 строк в 171 Кбайт данных JSON, что затрудняет его чтение.
Довольно распечатать данные JSON:
Doh. 8000 ++ строк слишком длинные, поэтому передайте их на пейджер, но сохраните выделение:
Уч. Сколько расширений в любом случае?
Хорошо, но некоторые из них отключены. Сколько именно?
Некоторые из них совершенно заброшены и больше не работают с текущим Firefox:
(Это позже неверно. По некоторым причинам extensions.json содержит другие диапазоны версий, кроме install.rdf расширений. Но в любом случае это не ошибка jq.)
источник
OOC
Да, я опоздал примерно на месяц. Ну и что???
Задание 1
135 байтов! Это было близко!
Кроме того, поддельные бонусные очки за безумно крутой логотип ASCII-art от ooc :
Задача 2
Задача 3
Довольно простая реализация. Кроме того, это демонстрирует интересный аспект вызовов ooc: метод использует пробелы в качестве разделителей, а не точек. Например, обратите внимание
stdin readLine() split(' ', false)
выше. На большинстве языков это записывается какstdin.readLine().split(' ', false)
, но ooc резервирует это для цепочки вызовов (прокрутите вниз до примера кода).Задача 3
Это демонстрирует мою любимую функцию ooc: сопоставление типов. Это как сопоставление с образцом. На ОО языке. Потрясающие.
источник