Вызов:
На выбранном вами языке программирования не нужно вводить и выводить название вашего языка программирования.
Достаточно справедливо, верно?
Ограничения:
- Вы не можете использовать любой символ, который включен в название вашего языка программирования в вашем коде. Например, если я использую Batch, я не должен использовать символы «B», «t», «c» в моем коде. Обратите внимание, что это чувствительно к регистру. Я все еще могу использовать символ «b», потому что он отличается от «B».
- Вы можете иметь «вывод нежелательной» до или после названия языка
- Номер версии не считается частью названия языка. Например, я могу использовать номер 3 в коде в моем ответе, если он в Python 3
- Вывод имени языка программирования не чувствителен к регистру.
- Перебивать все возможные комбинации букв и надеяться, что вы получите название вашего языка, запрещено.
Пример вывода: (скажем, мой язык программирования называется Language) (✔ если допустимо, иначе ✖)
Language
✔Body language is a type of non-verbal communication in which physical behavior, as opposed to words, is used to express or convey information. Such behavior includes facial expressions, body posture, gestures, eye movement, touch and the use of space.
✔Language 2.0 - © 1078 AD some company
✔foobar
✖
Это код-гольф, поэтому выигрывает самый короткий код.
--version
не разрешено"?Ответы:
Выходы в STDERR
Вывод в STDERR теперь находится на + 33 / -21 в качестве допустимого значения по умолчанию, что является положительным, но оспариваемым. Это CW-ответ для сбора ответов, которые просто вызывают ошибку на языке, где сообщения об ошибках включают название языка.
Haskell, 1 байт
Ошибка:
Lua, 1 байт
Ошибка:
(имя файла неважно)
Пакетный, 1 байт
Ошибка:
тинилисп, 5 байт
Ошибка:
R, 1 байт
Ошибка:
Байт-код Java, 0 байт
Ошибка:
Groovy, 1 байт
Обратите внимание, что
a
может быть заменен любым другим символомОшибка:
MATLAB, 1 байт
Ошибка:
PHP, 3 байта
Ошибка:
CJam, 1 байт
Ошибка:
Веточка, 2 байта
Twig - это язык шаблонов, написанный на PHP. Возможно, это полиглот.
Ошибка:
Сообщение зависит от выбранной вами программы.
СИЛОС , 2 байта
Попробуйте онлайн! Тривиально вызывает недокументированное поведение. Силосы это название языка.
Python, 6 байт
Поскольку ограничение символов не учитывает регистр, и выходные данные не обязательно должны быть в правильном регистре, это правильный ответ. Это сообщение об ошибке выглядит примерно так:
Попробуйте онлайн! (вывод на вкладку «отладка»)
JavaScript, 10 байт
Это создает следующее сообщение об ошибке или подобное во всех средах:
QBIC , 6 байтов
В 6 байтов мы можем поместить обнаруженную ошибку QBIC: 9 на экране, что означает ошибку за пределами допустимой границы.
ForceLang, 2 байта
Произошла ошибка:
Пип, 5 байт
(Примечание: это работает в текущей версии на момент написания, 0.17.09.01 . Нет гарантий, что интерпретатор не изменится, чтобы обработать эту ошибку иначе в будущем.)
Пытается регулярное сопоставление с синтаксически неверным шаблоном. Полученная ошибка будет выглядеть примерно так:
Stax, 2 байта
Ошибка:
zh
тоже работает.чернила, 1 байт
~
в начале строки отмечает, что строка является оператором, который должен быть выполнен, а не текстом, который должен быть напечатан. В зависимости от того, какую версию TL использует inklecate, если после нее ничего не происходит~
, интерпретатор вылетает со следующей ошибкой:источник
SmileBASIC, 11 байт
Эквивалент
SPSET 0,1474
. Устанавливает спрайт 0 для определения 1474, которое является логотипом SmileBASIC.источник
MATL , 1 байт
Вывод через STDERR, который разрешен по умолчанию .
Выход из автономного компилятора
Или попробуйте онлайн! (разверните раздел «отладка»).
источник
X
илиZ
. Это потомуX
, чтоY
илиZ
являются префиксами имен двух-символьных функций, поэтомуY
само по себе недопустимоR, 1 байт:
T
это псевдоним для константыTRUE
. Таким образом, результат для вышеупомянутого:Так как в названии допускается нежелательная почта, здесь присутствует буква «R».
( Как отмечалось в комментарии в другом месте , практически любая отдельная буква и множество глифов будут работать одинаково хорошо, потому что они вызывают сообщение «Ошибка:…», которое содержит «r».)
источник
HTML,
2420 байтHTML, 16 байт
Как отмечает @Bob , современные браузеры распознают объекты HTML без точек с запятой, хотя это технически недопустимый HTML. Конечно, это совершенно справедливо для кода гольфа.
HTML, 4 байта
И конечно же, неинтересный ответ.
Также, смотрите мой ответ CSS .
источник
HTML
. Вы можете сохранить дополнительные четыре символа, опустив точки с запятой, за счет того, что они технически недействительны в HTML (но все еще работают в современных браузерах).HTML
считается?html
должен быть действительным, уменьшив счет на 12 байт.Vim, 0 байт
Когда вы запускаете Vim, редактор отображает заставку, которая выглядит следующим образом:
Вы можете видеть это говорит
Vim
здесь:Предыдущий ответ:
Vim, 1 байт
В Vim 8 нажатие будет отображаться
Type :quit<Enter> to exit Vim
в последней строке. Я не совсем уверен, имеет ли это значение.источник
Python, 15 байт
Python 2 (15)
Он конкатенации строк использует восьмеричную ,
150
которыйh
и"elp()"
и запускает результат. Это печатаетhelp()
команду, которая говорит"Welcome to Python 3.5's help utility!"
, отвечая требованиям.Питон 3 (17)
Попробуйте онлайн!
источник
help
значение, он работает только в среде REPL.p
разрешено, ноP
не разрешено Правило 1.C 0 байт.
Попробуйте онлайн!
источник
c
пришли из чрезвычайно зависящих от реализации источников. Было бы лучше, если бы вы хотя бы спровоцировали сообщение, содержащеесяc
в некотором шаблонном выводе.А? 0 байт
(нет, в этом блоке кода ничего нет)
Язык назван для его вывода, так что ...
В проверенной мною реализации интерпретатор берет длину mod 8 каждой строки данного файла и переключается в зависимости от результата. Для нуля это печатает
Huh?
. Поскольку он удаляет завершающие символы новой строки, вы также можете сделать 1-байтовую (\n
) версию.Обратите внимание, что это не выводит в stderr или caseswapping или любой другой обман. Просто очень запутанный переводчик Хау наконец пригодился.
источник
V , 2 байта
Попробуйте онлайн!
Очевидный ответ:
Попробуйте онлайн!
Который является «Вставить букву« V », и переключить регистр». Однако, так как вы разрешаете вывод нежелательной почты до / после имени языка, это тоже работает.
Команда
¬
принимает два символа для ввода и вставляет каждый символ ASCII между ними. Если мы не предоставим второй символ, он автоматически по умолчанию будетÿ
(ASCII 0xff), поэтому эта программа вставляет каждый символ в кодировке latin1 междуU
иÿ
.источник
брейкфук , 54 байта
Выходы
brainfuck
, предполагая, что 8-битная лента открыта слева. Попробуйте онлайн!Как всегда, частичные кредиты отправляются в @ primo's Hello, World! ответ .
Альтернативы с другим корпусом
Brainfuck (62 байта):
BrainFuck (68 байт):
источник
MATLAB, 3 байта
Вывод следующий. Нерелевантная информация была заменена на
[...]
). Некоторые части вывода могут меняться в зависимости от версии, установленных наборов инструментов и т. Д.источник
Octave
, так что вы не можете использоватьv
иe
.Python,
2753494845 байт-3 байта от @ wizzwizz4
Печатает следующий текст, который имеет «Python» в первой строке.
источник
HELP()
илиHELP(HELP)
короче.import this
.Python 2 (1 байт)
выход...:
источник
0xa0
(nbsp) или любой другой старший байт, который вам нравится, и вы получите ту же ошибку!> <> ,
1210 байтЭто будет непрерывно печатать> <>, пока у интерпретатора не останется свободного места.
Попробуйте онлайн!
12-байтовая версия ниже для тех, кто любит чистый вывод. Рекомендовано Аароном (без ошибок, 1 вывод)
источник
"-o-o-o;_!\ _!
JAVA, 1 байт
Вывод в stderr:
источник
CSS, 25 байт
Обратите внимание, что в фрагменты переполнения стека добавляется дополнительная разметка, в результате чего «CSS» отображается более одного раза. Откройте
.html
файл с содержимымчтобы увидеть результат, как задумано.
источник
Баш CLI, 9
Если вам нужен настоящий скрипт, а не просто команда в интерактивной командной строке, то вы можете сделать это:
Баш, 13
Выходы
/bin/bash
источник
echo $0
должен работатьx $0
работает, при условии, что на пути нет исполняемого файла с именем x. В этом случае подставьте любую другую букву, цифру или нестандартный символ.$'ec\x68o' $0
лечит эту деталь.C 15 байт
Скомпилированный C на машине Linux с немецким языком:
main(){main();}
Он запустится до переполнения стека и напечатает
Speicherzugriffsfehler
(немецкий язык для ошибки сегментации) на stderr.источник
дк, 6
Выходы
dc
.Попробуйте онлайн .
источник
Пип , 8 байт
Берет персонажа
I
иWR
помещает его вC
hr (80
), что приводит кPIP
. Попробуйте онлайн!Использование
I
немного напоминает читерство, поэтому вот два 9-байтовых решения, которые не используют ни одного из нихPpIi
:Оба выходных
pip
. Я особенно доволен вторым:Для правильной капитализации нам нужно 10-байтовое решение :
Как это работает, оставлено читателю в качестве упражнения. ; ^)
источник
C #,
6067 байтисточник
\u0043
и тому подобноеConsole
но я не могу использоватьC
в соответствии с правилами вопроса. В C # вы можете использовать escape-последовательности Unicode в идентификаторах._=>System.\u0043onsole.Write("\x43\x23");
бред, 105 байт
Попробуйте это онлайн здесь
источник
---
уценки?R 11 байт
Попробуйте онлайн!
источник
version$l
9 байтversion
, достаточно (7 байт)Далее 5 байт
Попробуйте онлайн
Печатает список каждого слова в языке.
Forth
оказывается в списке (первое слово в строке 125), хотя я не знаю, что он делает.источник
Гексагония , 19 байт
В основном прямой линейный поток, завернутый в шестигранник.
Попробуйте это 19-байтовое не интересное решение онлайн!
Более интересные 28 байтов:
Попробуйте онлайн!
Это использует маленький
h
, что разрешено. Использует IP1 (Initial is 0) как «функцию», которая выполняет «Decrement and print as char».Расширенный вид
Сохранение
I
в памяти, переход к следующему указателю инструкций с помощью]
, затем IP1 запускается из угла NE в направлении SE и ударяет,..>
который направляет к E, переносится в нижние 5 no-ops,.
а затем в(
(уменьшение),;
(печатать как char) и затем,[
который возвращается к IP0.IP0 начинает чтение с того места, где остановился
f
, проходит через no-op.
и в середину,]
которая снова запускает «функцию»: IP1 начинается с того места, где остановился, и нажимает no-op,.
затем$
пропускает>
и снова проходит через дно. печататьe
.Программа продолжает делать такие вещи. Обнаружил, что я мог просто напечатать
n
, вызвав функцию снова после печатиo
. Мм ... не могу придумать, как сократить это дальше, хотя я заменяю 1 байт на no-op этим открытием.Оставьте мне комментарий, если вы хотите увидеть диаграммы в этом объяснении!
источник
J, 2 байта
a.
возвращает алфавит языка J - встроенный список всех байтов.Мой оригинал: 4 байта
Это просто кажется мне классным. Квадратный корень (
%:
) отрицательного 1 (_1
) - это i (0j1
).источник
a.
. Печатает алфавит, который, очевидно, включает «J». Определенно не так круто, хотя: /Бейсик (ZX Spectrum),
42 байтавычеркнуто 4 все еще регулярно 4
Сохранено 2 байта благодаря @ShaunBebbers.
Примечание. В наборе символов ZX Spectrum эти байты отображаются как
Когда вы вводите это, Spectrum начинает с анализа необязательного номера, за которым следует строка кода. Обычно это номер строки,
1..9999
который приводит к добавлению кода в сохраненную программу. Однако, если номер строки не указан, тогда код выполняется немедленно. К сожалению, ошибка в Спектруме означает, что он ошибочно принимает нулевой номер строки без номера строки, но все равно пытается выполнить ноль как часть строки кода, что является недопустимым, вызывая ошибку.Предыдущая 4-байтовая версия генерирует истинную ошибку, а не полагается на ошибку интерпретатора:
Примечание. В наборе символов ZX Spectrum эти байты отображаются как
какие выводы
потому что пустая строка не является допустимым числовым выражением. (Конечно, я мог бы использовать любое утверждение, которое принимает одно целое число.) Если этот ответ неприемлем, то для 6 байт вы можете написать программу, состоящую из одной строки с одним из ключевых слов, которое не принимает аргументов, а затем использовать
POKE
для замены это с недопустимым ключевым словом, а затем попыткаRUN
программы.источник
0 REM
выдает ту же ошибкуC
2420 байт (Clang 3.8.1)Спасибо @squeamish ossifrage за помощь в экономии 4 байтов.
источник
putchar(67);
?printf('c')
также не будет действительным? Вам не разрешено использовать прописные буквы "C", но вы строчные, и результат не зависит от регистра.printf
нужно,char *
поэтому мне нужно использовать""
Vim, 3 байта
Попробуйте онлайн!
Это открывает файл справки по умолчанию и выводит:
источник