Вывод названия языка программирования


45

Вызов:

На выбранном вами языке программирования не нужно вводить и выводить название вашего языка программирования.

Достаточно справедливо, верно?

Ограничения:

  • Вы не можете использовать любой символ, который включен в название вашего языка программирования в вашем коде. Например, если я использую 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

Это поэтому выигрывает самый короткий код.


7
Правило об ограничениях с учетом регистра очень неоднозначно. Какая правильная орфография: BASIC Basic или basic? Я почти уверен, что смогу найти примеры для всех трех.
Уровень Река St

7
Обязательный "Просто оставить ваш код пустым, но иметь флаг, как --versionне разрешено"?
Value Ink

88
Иметь вывод без учета регистра при запрете имени языка с учетом регистра позволяет скучные решения, которые просто выводят имя языка с учетом регистра.
xnor

12
Вы допустили ошибку, позволив пользователям выводить нежелательные данные. Все, что им нужно сделать, - это использовать язык, в котором компилятор включает имя при возникновении ошибки. Это круто, но не вызов, на который я надеялся
Lynob

3
Этот вопрос действительно должен быть указан, что «Код» должен быть запущен. Большинство языков будут отображать свое имя в дампе использования, если вы не дадите никакого кода - например, «Java» или «Groovy» в командной строке без кода покажет правильное имя, однако, если вы передадите код (даже » пустой "код" как в (groovy -e "") вы получите пустой ответ. То же самое для проблем компиляции, использование компилятора или вывод ошибок не означает, что вы написали программу.
Билл К

Ответы:


68

Выходы в STDERR

Вывод в STDERR теперь находится на + 33 / -21 в качестве допустимого значения по умолчанию, что является положительным, но оспариваемым. Это CW-ответ для сбора ответов, которые просто вызывают ошибку на языке, где сообщения об ошибках включают название языка.

Haskell, 1 байт

1

Ошибка:

Parse error: naked expression at top level
Perhaps you intended to use TemplateHaskell

Lua, 1 байт

1

Ошибка:

lua: .code.tio:1: syntax error near <eof>

(имя файла неважно)

Пакетный, 1 байт

~

Ошибка:

'~' is not recognized as an internal or external command,
operable program or batch file.

тинилисп, 5 байт

(c()1

Ошибка:

Error: cannot cons to Int in tinylisp

R, 1 байт

)

Ошибка:

Error: unexpected ')' in ")"

Байт-код Java, 0 байт

Ошибка:

Exception in thread "main" java.lang.ClassFormatError: Truncated class file

Groovy, 1 байт

a

Обратите внимание, что aможет быть заменен любым другим символом

Ошибка:

groovy.lang.MissingPropertyException: No such property: a ...

MATLAB, 1 байт

\

Ошибка:

Error: Unexpected MATLAB operator.

PHP, 3 байта

<?=

Ошибка:

PHP Parse error:  syntax error, unexpected end of file in /home/runner/.code.tio on line 1

CJam, 1 байт

/

Ошибка:

/
^
RuntimeException: The stack is empty
Java exception:
java.lang.RuntimeException: The stack is empty
    at net.aditsu.cjam.CJam.pop(CJam.java:75)
    at net.aditsu.cjam.Op2.run(Op2.java:10)
    at net.aditsu.cjam.Block.run(Block.java:304)
    at net.aditsu.cjam.CJam.runCode(CJam.java:210)
    at net.aditsu.cjam.CJam.main(CJam.java:240)

Веточка, 2 байта

Twig - это язык шаблонов, написанный на PHP. Возможно, это полиглот.

{{
{%
{#

Ошибка:

PHP Fatal error:  Uncaught exception 'Twig_Error_Syntax' with message [...] in [...][...]:n:
Stack trace:
#0 [...]

Сообщение зависит от выбранной вами программы.

СИЛОС , 2 байта

x+

Попробуйте онлайн! Тривиально вызывает недокументированное поведение. Силосы это название языка.

Python, 6 байт

pYTHON

Поскольку ограничение символов не учитывает регистр, и выходные данные не обязательно должны быть в правильном регистре, это правильный ответ. Это сообщение об ошибке выглядит примерно так:

Traceback (most recent call last):
  File ".code.tio", line 1, in <module>
    pYTHON
NameError: name 'pYTHON' is not defined

Попробуйте онлайн! (вывод на вкладку «отладка»)

JavaScript, 10 байт

jAVAsCRIPT

Это создает следующее сообщение об ошибке или подобное во всех средах:

ReferenceError: jAVAsCRIPT is not defined

QBIC , 6 байтов

?b(12)

В 6 байтов мы можем поместить обнаруженную ошибку QBIC: 9 на экране, что означает ошибку за пределами допустимой границы.

ForceLang, 2 байта

()

Произошла ошибка:

Exception in thread "main" lang.exceptions.IllegalInvocationException: null is not a function.
    at lang.ForceLang.parse(ForceLang.java:99)
    at lang.ForceLang.main(ForceLang.java:129)

Пип, 5 байт

1~`[`

(Примечание: это работает в текущей версии на момент написания, 0.17.09.01 . Нет гарантий, что интерпретатор не изменится, чтобы обработать эту ошибку иначе в будущем.)

Пытается регулярное сопоставление с синтаксически неверным шаблоном. Полученная ошибка будет выглядеть примерно так:

Traceback (most recent call last):
  File "/opt/pip/pip.py", line 221, in <module>
    pip(interactive=False)
  File "/opt/pip/pip.py", line 206, in pip
    state.executeProgram(tree, args)
  File "/opt/pip/execution.py", line 56, in executeProgram
    returnVal = self.functionCall(mainFunction, cmdLineArgs)
  File "/opt/pip/execution.py", line 368, in functionCall
    returnVal = self.getRval(returnExpr)
  File "/opt/pip/execution.py", line 235, in getRval
    expr = self.evaluate(expr)
  File "/opt/pip/execution.py", line 213, in evaluate
    result = opFunction(*args)
  File "/opt/pip/execution.py", line 1134, in FIRSTMATCH
    matchObj = regex.asRegex().search(str(string))
  File "/opt/pip/ptypes.py", line 175, in asRegex
    self._compiled = re.compile(pyRegex)
  File "/usr/lib64/python3.6/re.py", line 233, in compile
    return _compile(pattern, flags)
  File "/usr/lib64/python3.6/re.py", line 301, in _compile
    p = sre_compile.compile(pattern, flags)
  File "/usr/lib64/python3.6/sre_compile.py", line 562, in compile
    p = sre_parse.parse(p, flags)
  File "/usr/lib64/python3.6/sre_parse.py", line 855, in parse
    p = _parse_sub(source, pattern, flags & SRE_FLAG_VERBOSE, 0)
  File "/usr/lib64/python3.6/sre_parse.py", line 416, in _parse_sub
    not nested and not items))
  File "/usr/lib64/python3.6/sre_parse.py", line 765, in _parse
    p = _parse_sub(source, state, sub_verbose, nested + 1)
  File "/usr/lib64/python3.6/sre_parse.py", line 416, in _parse_sub
    not nested and not items))
  File "/usr/lib64/python3.6/sre_parse.py", line 523, in _parse
    source.tell() - here)
sre_constants.error: unterminated character set at position 8

Stax, 2 байта

0u

Ошибка:

Stax runtime error: rational divide by zero

zh тоже работает.

чернила, 1 байт

~

~в начале строки отмечает, что строка является оператором, который должен быть выполнен, а не текстом, который должен быть напечатан. В зависимости от того, какую версию TL использует inklecate, если после нее ничего не происходит ~, интерпретатор вылетает со следующей ошибкой:

System.NullReferenceException: Object reference not set to an instance of an object
  at Ink.InkParser.LogicLine () [0x000b1] in <b1e5e74f4ee842fc961297862cf23e07>:0 
  at Ink.StringParser.ParseObject (Ink.StringParser+ParseRule rule) [0x00012] in <b1e5e74f4ee842fc961297862cf23e07>:0 
  at Ink.StringParser.OneOf (Ink.StringParser+ParseRule[] array) [0x0000a] in <b1e5e74f4ee842fc961297862cf23e07>:0 
  at Ink.InkParser.StatementAtLevel (Ink.InkParser+StatementLevel level) [0x00009] in <b1e5e74f4ee842fc961297862cf23e07>:0 
  at Ink.InkParser+<>c__DisplayClass134_0.<StatementsAtLevel>b__0 () [0x00000] in <b1e5e74f4ee842fc961297862cf23e07>:0 
  at Ink.StringParser.ParseObject (Ink.StringParser+ParseRule rule) [0x00012] in <b1e5e74f4ee842fc961297862cf23e07>:0 
  at Ink.StringParser.Interleave[T] (Ink.StringParser+ParseRule ruleA, Ink.StringParser+ParseRule ruleB, Ink.StringParser+ParseRule untilTerminator, System.Boolean flatten) [0x00040] in <b1e5e74f4ee842fc961297862cf23e07>:0 
  at Ink.InkParser.StatementsAtLevel (Ink.InkParser+StatementLevel level) [0x0004f] in <b1e5e74f4ee842fc961297862cf23e07>:0 
  at Ink.InkParser.Parse () [0x00000] in <b1e5e74f4ee842fc961297862cf23e07>:0 
  at Ink.Compiler.Compile () [0x00033] in <b1e5e74f4ee842fc961297862cf23e07>:0 
  at Ink.CommandLineTool..ctor (System.String[] args) [0x001a3] in <d64e27e7788347b2a5377c9e19bbdcab>:0 
  at Ink.CommandLineTool.Main (System.String[] args) [0x00000] in <d64e27e7788347b2a5377c9e19bbdcab>:0 
[ERROR] FATAL UNHANDLED EXCEPTION: System.NullReferenceException: Object reference not set to an instance of an object
  at Ink.InkParser.LogicLine () [0x000b1] in <b1e5e74f4ee842fc961297862cf23e07>:0 
  at Ink.StringParser.ParseObject (Ink.StringParser+ParseRule rule) [0x00012] in <b1e5e74f4ee842fc961297862cf23e07>:0 
  at Ink.StringParser.OneOf (Ink.StringParser+ParseRule[] array) [0x0000a] in <b1e5e74f4ee842fc961297862cf23e07>:0 
  at Ink.InkParser.StatementAtLevel (Ink.InkParser+StatementLevel level) [0x00009] in <b1e5e74f4ee842fc961297862cf23e07>:0 
  at Ink.InkParser+<>c__DisplayClass134_0.<StatementsAtLevel>b__0 () [0x00000] in <b1e5e74f4ee842fc961297862cf23e07>:0 
  at Ink.StringParser.ParseObject (Ink.StringParser+ParseRule rule) [0x00012] in <b1e5e74f4ee842fc961297862cf23e07>:0 
  at Ink.StringParser.Interleave[T] (Ink.StringParser+ParseRule ruleA, Ink.StringParser+ParseRule ruleB, Ink.StringParser+ParseRule untilTerminator, System.Boolean flatten) [0x00040] in <b1e5e74f4ee842fc961297862cf23e07>:0 
  at Ink.InkParser.StatementsAtLevel (Ink.InkParser+StatementLevel level) [0x0004f] in <b1e5e74f4ee842fc961297862cf23e07>:0 
  at Ink.InkParser.Parse () [0x00000] in <b1e5e74f4ee842fc961297862cf23e07>:0 
  at Ink.Compiler.Compile () [0x00033] in <b1e5e74f4ee842fc961297862cf23e07>:0 
  at Ink.CommandLineTool..ctor (System.String[] args) [0x001a3] in <d64e27e7788347b2a5377c9e19bbdcab>:0 
  at Ink.CommandLineTool.Main (System.String[] args) [0x00000] in <d64e27e7788347b2a5377c9e19bbdcab>:0 

18
Разве пустая строка не содержится в названии языка? : D
mbomb007

21
В C и R из них с Leve г .
DLosc

2
@ mbomb007, но это не символ, поэтому он не входит в название языка.
user253751

1
SILOS один считается? Это не выводит периоды.
Business Cat

10
Msgstr " Java bytecode, 0 bytes ". Впервые я вижу, как Java одерживает победу над ВСЕМИ из других упомянутых языков. :)
Кевин Круйссен

49

SmileBASIC, 11 байт

sPsET.,1474

Эквивалент SPSET 0,1474. Устанавливает спрайт 0 для определения 1474, которое является логотипом SmileBASIC.

Скриншот


44

MATL , 1 байт

Y

Вывод через STDERR, который разрешен по умолчанию .

Выход из автономного компилятора

Error using matl_parse (line 339)
MATL error while parsing: Y not recognized at position 1
Error in matl (line 234)
    S = matl_parse(s, useTags); 

Или попробуйте онлайн! (разверните раздел «отладка»).


7
Должны ли вы слиться с этим ?
wizzwizz4

@ wizzwizz4 Я не уверен. Я спросил в чате и получил эти два ответа , так что не очень понятно
Луис Мендо

1
да, но ты?
sagiksp

@sagiksp Подойдет все, что выдает ошибку, например Xили Z. Это потому X, что Yили Zявляются префиксами имен двух-символьных функций, поэтому Yсамо по себе недопустимо
Луис Мендо

38

R, 1 байт:

T

Tэто псевдоним для константы TRUE. Таким образом, результат для вышеупомянутого:

[1] TRUE

Так как в названии допускается нежелательная почта, здесь присутствует буква «R».

( Как отмечалось в комментарии в другом месте , практически любая отдельная буква и множество глифов будут работать одинаково хорошо, потому что они вызывают сообщение «Ошибка:…», которое содержит «r».)


31

HTML, 24 20 байт

&#72;&#84;&#77;&#76;


HTML, 16 байт

Как отмечает @Bob , современные браузеры распознают объекты HTML без точек с запятой, хотя это технически недопустимый HTML. Конечно, это совершенно справедливо для кода гольфа.

&#72&#84&#77&#76


HTML, 4 байта

И конечно же, неинтересный ответ.

html


Также, смотрите мой ответ CSS .


3
Вы можете сохранить четыре символа с помощью десятичной вместо: &#72;&#84;&#77;&#76;. Вы можете сохранить дополнительные четыре символа, опустив точки с запятой, за счет того, что они технически недействительны в HTML (но все еще работают в современных браузерах).
Боб

Почему не HTMLсчитается?
Стоп Harm Моника

1
@OrangeDog «Вы не можете использовать любой символ, который включен в название вашего языка программирования в вашем коде»
darrylyeo

Но htmlдолжен быть действительным, уменьшив счет на 12 байт.
Кристоф

3
@Clearer Это код гольф! Пока он работает хотя бы в одной среде, кого волнует, считает ли W3C, что он действителен?
Darrylyeo

26

Vim, 0 байт



Когда вы запускаете Vim, редактор отображает заставку, которая выглядит следующим образом:

Vim заставка

Вы можете видеть это говорит Vimздесь:

Экран-заставка Vim с выделенным vim

Предыдущий ответ:

Vim, 1 байт

<Ctrl-C>

В Vim 8 нажатие будет отображаться Type :quit<Enter> to exit Vimв последней строке. Я не совсем уверен, имеет ли это значение.


1
Это должно рассчитывать. Ctrl-C на самом деле имеет свой собственный код ASCII (код 3, также называемый ETX или «конец текста»), так что это программа с чисто ASCII (если не с чисто ASCII для печати ). Вы можете использовать это, чтобы доказать, что программа имеет длину в один байт, и отображать текст на экране.

4
С каких это пор vim является языком программирования?
ДепрессияДаниэль

4
@DepressedDaniel vim на самом деле является языком сценариев, если вы посмотрите глубже на внутренности. Все эти причудливые нажатия клавиш - инструкции => вы программируете, когда управляете своим редактором.
bash0r

1
@DepressedDaniel Тьюринг завершен? Если это не так, я не думаю, что это стоит считать.
Яснее

3
@dfeuer Я согласен с вами, так как я сделал этот комментарий более 2 лет назад.
Прояснится

20

Python, 15 байт

Python 2 (15)

exec"\150elp()"

Он конкатенации строк использует восьмеричную , 150который hи "elp()"и запускает результат. Это печатает help()команду, которая говорит "Welcome to Python 3.5's help utility!", отвечая требованиям.

Питон 3 (17)

exec("\150elp()")

Попробуйте онлайн!


Не уверен, имеет helpзначение, он работает только в среде REPL.
xnor

Это все еще печатает Питон. Это все, что требуется.

1
Неважно, я ошибся, и это работает как программа. Прости за это.
xnor

1
Вы использовали букву «р»
Мэтт

3
pразрешено, но Pне разрешено Правило 1.

18

C 0 байт.

/usr/lib/gcc/i586-linux-gnu/5/../../../i386-linux-gnu/crt1.o: In function `_start':
(.text+0x18): undefined reference to `main'
collect2: error: ld returned 1 exit status

Попробуйте онлайн!


где имя? Или вы ссылаетесь на символы c там?
Надеюсь, что это

3
Это должно быть отмечено как C (gcc), потому что другие компиляторы имеют разные сообщения.
orlp

Мех, вы cпришли из чрезвычайно зависящих от реализации источников. Было бы лучше, если бы вы хотя бы спровоцировали сообщение, содержащееся cв некотором шаблонном выводе.
ДепрессияДаниэль

1
@DepressedDaniel неопределенного справочник с й к 'главному'
Loren Pechtel

@LorenPechtel Справедливо, пропустил это.
ДепрессияДаниэль

17

А? 0 байт



(нет, в этом блоке кода ничего нет)

Язык назван для его вывода, так что ...

В проверенной мною реализации интерпретатор берет длину mod 8 каждой строки данного файла и переключается в зависимости от результата. Для нуля это печатает Huh?. Поскольку он удаляет завершающие символы новой строки, вы также можете сделать 1-байтовую ( \n) версию.

Обратите внимание, что это не выводит в stderr или caseswapping или любой другой обман. Просто очень запутанный переводчик Хау наконец пригодился.


Подождите, этот язык Тьюринга завершен?
Привет, до свидания

13

V , 2 байта

¬U

Попробуйте онлайн!

Очевидный ответ:

év~

Попробуйте онлайн!

Который является «Вставить букву« V », и переключить регистр». Однако, так как вы разрешаете вывод нежелательной почты до / после имени языка, это тоже работает.

Команда ¬принимает два символа для ввода и вставляет каждый символ ASCII между ними. Если мы не предоставим второй символ, он автоматически по умолчанию будет ÿ(ASCII 0xff), поэтому эта программа вставляет каждый символ в кодировке latin1 между Uи ÿ.


13

брейкфук , 54 байта

+[[-<]-[->]<-]<.<<<<.>>>>-.<<-.<.>>.<<<+++.>>>---.<++.

Выходы brainfuck, предполагая, что 8-битная лента открыта слева. Попробуйте онлайн!

Как всегда, частичные кредиты отправляются в @ primo's Hello, World! ответ .

Альтернативы с другим корпусом

Brainfuck (62 байта):

+[<-[-<]-[->]<<]<---.<<<<<<--.>>>-.<+.<.>---.<<+++.>>---.<---.

BrainFuck (68 байт):

-[[-<]->+[->]<-]<<.<<<<<--.>>+.<-.+++++.>>>------.<<<<+++.>>++.<---.

12

MATLAB, 3 байта

ver

Вывод следующий. Нерелевантная информация была заменена на [...]). Некоторые части вывода могут меняться в зависимости от версии, установленных наборов инструментов и т. Д.

-----------------------------------------------------------------------------------------
MATLAB Version: 8.6.0.267246 (R2015b)
MATLAB License Number: [...]
Operating System: [...]
Java Version: Java 1.7.0_60-b19 with [...]
-----------------------------------------------------------------------------------------
MATLAB                                                Version 8.6         (R2015b)
Communications System Toolbox                         Version 6.1         (R2015b)
Curve Fitting Toolbox                                 Version 3.5.2       (R2015b)
[...]
Wavelet Toolbox                                       Version 4.15        (R2015b)

Использует av и e

Ваш язык Octave, так что вы не можете использовать vи e.
JungHwan Мин

6
Woops. Исправлено путем изменения языка на Matlab (что и было моим первоначальным намерением)
Луис Мендо

12

Python, 27 53 49 48 45 байт

-3 байта от @ wizzwizz4

exec eval('"IMpORT THIS".LOWER()'.swapcase())

Печатает следующий текст, который имеет «Python» в первой строке.

The Zen of Python, by Tim Peters

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!

1
@ Арнаулд исправил!
Стоимость чернил

1
HELP()или HELP(HELP)короче.
Гурупад Мамадапур

Неважно, если вы меняете регистр строки импорта, потому что вы все равно делаете ее строчной. -3 байта.
wizzwizz4

@GurupadMamadapur ответ на Python 3 уже охватил его и лучше (почти уверен, что мой код будет точно таким же), так что я тоже не в настроении его использовать. Угадайте , я придерживаюсь import this.
Стоимость чернил

@ValueInk Хорошо, тогда.
Гурупад Мамадапур

12

Python 2 (1 байт)

è

выход...:

выход


Вы уверены, что это только 1 байт?
Okx

1
Согласовано. Это 2 байта в UTF-8
mbomb007

Ключ не «ASCII» - попробуйте 0xa0(nbsp) или любой другой старший байт, который вам нравится, и вы получите ту же ошибку!
Джон П

3
Это 1 байт в Win1252, который показывает, что используется сообщение об ошибке.
ATaco

10

> <> , 12 10 байт

"2,:o:2-o|

Это будет непрерывно печатать> <>, пока у интерпретатора не останется свободного места.

Попробуйте онлайн!

12-байтовая версия ниже для тех, кто любит чистый вывод. Рекомендовано Аароном (без ошибок, 1 вывод)

":3+:o$1+oo;

Гениальное решение!
Эминья

@Emigna - Спасибо, окончательная версия была после нескольких неудачных гольфов, но мне это очень нравится, потому что с ошибкой он печатает> <> и рыбу: D
Teal

Хороший ! Вот 14-байтовая версия, которая печатается только один раз и не выдает ошибок:"-o-o-o;_!\ _!
Аарон

@ Аарон, если ты проверил правку, то первая версия сделала это в 12. Мне нравится, как чисто твоя выглядит, хотя :)
Teal

Мне нравится ваша 12-байтовая версия (10 байтов тоже :)), я думаю, что вы должны были оставить ее в своем ответе в стороне («для тех, кто любит чистый вывод, [...]»)!
Аарон

9

JAVA, 1 байт

1

Вывод в stderr:

Main.java:1: error: class, interface, or enum expected
1
^
1 error
Error: Could not find or load main class Main
Command exited with non-zero status 1
    Command being timed: "/srv/wrappers/java-openjdk"
    User time (seconds): 1.40
    System time (seconds): 0.80
    Percent of CPU this job got: 40%
    Elapsed (wall clock) time (h:mm:ss or m:ss): 0:05.40
    Average shared text size (kbytes): 0
    Average unshared data size (kbytes): 0
    Average stack size (kbytes): 0
    Average total size (kbytes): 0
    Maximum resident set size (kbytes): 44564
    Average resident set size (kbytes): 0
    Major (requiring I/O) page faults: 205
    Minor (reclaiming a frame) page faults: 11301
    Voluntary context switches: 2666
    Involuntary context switches: 1677
    Swaps: 0
    File system inputs: 78312
    File system outputs: 0
    Socket messages sent: 0
    Socket messages received: 0
    Signals delivered: 0
    Page size (bytes): 4096
    Exit status: 1 

15
Это результат компиляции, а не запуска программы. Я не знаю, разрешено ли это по умолчанию.
CAD97

2
Кроме того, если вы выберете другое расширение файла, оно не выведет "java", не так ли? (Не уверен, что это возможно с Java)
Йонас Шефер

11
если вы перейдете с Java на Java-байт-код, вы можете уменьшить его на один символ. при попытке запустить пустой файл класса будет
выброшен

2
Программы, выводимые в stderr, должны быть отредактированы в этом ответе .
mbomb007

8

CSS, 25 байт

:after{content:'\43\53\53

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

<style>:after{content:'\43\53\53

чтобы увидеть результат, как задумано.


7

Баш CLI, 9

printf $0

Если вам нужен настоящий скрипт, а не просто команда в интерактивной командной строке, то вы можете сделать это:

Баш, 13

printf $SHELL

Выходы /bin/bash


1
echo $0должен работать
брезгливый ossifrage

@squeamishossifrage Это работает в командной строке оболочки, но в сценарии выводит имя сценария.
Цифровая травма

1
x $0работает, при условии, что на пути нет исполняемого файла с именем x. В этом случае подставьте любую другую букву, цифру или нестандартный символ.
nigel222

2
'h' - это нелегальный символ для вас, и вы используете его в echo
user902383

2
$'ec\x68o' $0лечит эту деталь.
manatwork

7

C 15 байт

Скомпилированный C на машине Linux с немецким языком:

main(){main();}

Он запустится до переполнения стека и напечатает Speicherzugriffsfehler(немецкий язык для ошибки сегментации) на stderr.


............ :-D
Alfe


6

Пип , 8 байт

'IWR C80

Берет персонажа Iи WRпомещает его в Chr ( 80), что приводит к PIP. Попробуйте онлайн!

Использование Iнемного напоминает читерство, поэтому вот два 9-байтовых решения, которые не используют ни одного из них PpIi:

z@8WRz@15
(z8+^707)

Оба выходных pip. Я особенно доволен вторым:

    ^707   Split 707 into a list of characters        [7;0;7]
  8+       Add 8 to each one                          [15;8;15]
(z      )  Use list to index into lowercase alphabet  ["p";"i";"p"]
           By default, lists are printed without a separator

Для правильной капитализации нам нужно 10-байтовое решение :

'IWR C80Vx

Как это работает, оставлено читателю в качестве упражнения. ; ^)


6

C #, 60 67 байт

class P{static void Main(){System.\u0043onsole.Write("\x43\x23");}}

Это на самом деле ваш ответ, или ошибка испортила ваш ответ?
auhmaan

@auhmaan Извините, исправлено . Я изначально тестировал на LINQPad, и забыл, что он имеет несколько импортов пространства имен по умолчанию.
Боб

Я имел в виду \u0043и тому подобное
auhmaan

1
@auhmaan Это намеренно, потому что мне нужно, Consoleно я не могу использовать Cв соответствии с правилами вопроса. В C # вы можете использовать escape-последовательности Unicode в идентификаторах.
Боб

3
Я уверен, что вы можете использовать анонимный метод для этого, я не вижу ограничения, требующего полной программы, так что вы могли бы сделать_=>System.\u0043onsole.Write("\x43\x23");
TheLethalCoder

6

бред, 105 байт

--[----->+<]>----.[--->+<]>----.+++[->+++<]>++.++++++++.+++++.--------.-[--->+<]>--.+[->+++<]>+.++++++++.

Попробуйте это онлайн здесь


7
Ну, не проблема в BrainFuck;)
devRicher

@devRicher вовсе нет;)
TrojanByAccident

@ mbomb007 Понятно.
TrojanByAccident

@ mbomb007 обновлено
TrojanByAccident

Есть ли какая-то причина для чрезмерной ---уценки?
FlipTack

5

R 11 байт

cat("\x52")

Попробуйте онлайн!


version$l9 байт
djhurio

2
Вероятно version, достаточно (7 байт)
djhurio

1
Или просто «р». 3 байта.
Конрад Рудольф

@KonradRudolph Вы не можете использовать ... подождите; спецификации чувствительны к регистру при проверке, но не выводятся ... Умно.
wizzwizz4


5

Далее 5 байт

WORDS

Попробуйте онлайн

Печатает список каждого слова в языке. Forthоказывается в списке (первое слово в строке 125), хотя я не знаю, что он делает.


5

Гексагония , 19 байт

В основном прямой линейный поток, завернутый в шестигранник.

h;E;N;Y;X;A;;@/OG;/

Попробуйте это 19-байтовое не интересное решение онлайн!

Более интересные 28 байтов:

. I] е @] г;. (;. [$>] Г (] Ь] \ (] р] ч <

Попробуйте онлайн!

Это использует маленький h, что разрешено. Использует IP1 (Initial is 0) как «функцию», которая выполняет «Decrement and print as char».

Расширенный вид

   I ] f .
  @ ] z ; .
 ( ; [ . $ >
] z ( ] b ] \
 ( ] p ] h <
  . . . . .
   . . . .

Сохранение Iв памяти, переход к следующему указателю инструкций с помощью ], затем IP1 запускается из угла NE в направлении SE и ударяет, ..>который направляет к E, переносится в нижние 5 no-ops, .а затем в ((уменьшение), ;(печатать как char) и затем, [который возвращается к IP0.

IP0 начинает чтение с того места, где остановился f, проходит через no-op .и в середину, ]которая снова запускает «функцию»: IP1 начинается с того места, где остановился, и нажимает no-op, .затем $пропускает >и снова проходит через дно. печатать e.

Программа продолжает делать такие вещи. Обнаружил, что я мог просто напечатать n, вызвав функцию снова после печати o. Мм ... не могу придумать, как сократить это дальше, хотя я заменяю 1 байт на no-op этим открытием.

Оставьте мне комментарий, если вы хотите увидеть диаграммы в этом объяснении!


5

J, 2 байта

   a.


┌┬┐├┼┤└┴┘│─ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������

a. возвращает алфавит языка J - встроенный список всех байтов.

Мой оригинал: 4 байта

   %:_1
0j1

Это просто кажется мне классным. Квадратный корень ( %:) отрицательного 1 ( _1) - это i ( 0j1).


1
2 байта: a.. Печатает алфавит, который, очевидно, включает «J». Определенно не так круто, хотя: /
Bolce Bussiere

Должен гольф. :-) Тем не менее, я прикреплен к моему первоначальному ответу.
датчанин

5

Бейсик (ZX Spectrum), 4 2 байта

вычеркнуто 4 все еще регулярно 4

Сохранено 2 байта благодаря @ShaunBebbers.

Примечание. В наборе символов ZX Spectrum эти байты отображаются как

0 PRINT

Когда вы вводите это, Spectrum начинает с анализа необязательного номера, за которым следует строка кода. Обычно это номер строки, 1..9999который приводит к добавлению кода в сохраненную программу. Однако, если номер строки не указан, тогда код выполняется немедленно. К сожалению, ошибка в Спектруме означает, что он ошибочно принимает нулевой номер строки без номера строки, но все равно пытается выполнить ноль как часть строки кода, что является недопустимым, вызывая ошибку.

Предыдущая 4-байтовая версия генерирует истинную ошибку, а не полагается на ошибку интерпретатора:

õ°""

Примечание. В наборе символов ZX Spectrum эти байты отображаются как

PRINT VAL ""

какие выводы

C Nonsense in BASIC, 0:1

потому что пустая строка не является допустимым числовым выражением. (Конечно, я мог бы использовать любое утверждение, которое принимает одно целое число.) Если этот ответ неприемлем, то для 6 байт вы можете написать программу, состоящую из одной строки с одним из ключевых слов, которое не принимает аргументов, а затем использовать POKEдля замены это с недопустимым ключевым словом, а затем попытка RUNпрограммы.


или 0 REMвыдает ту же ошибку
Шон Бебберс

1
@ShaunBebbers Это даже проходит проверку синтаксиса?
Нил

да, это на реальном спектруме.
Шон Бебберс

4

C 24 20 байт (Clang 3.8.1)

Спасибо @squeamish ossifrage за помощь в экономии 4 байтов.

main(){putchar(67);}

Как насчет putchar(67);?
брезгливое

@squeamishossifrage Да, спасибо
Уэйд Тайлер

Просто любопытно, но printf('c')также не будет действительным? Вам не разрешено использовать прописные буквы "C", но вы строчные, и результат не зависит от регистра.
Jocie

1
@Jocie printfнужно, char *поэтому мне нужно использовать""
Уэйд Тайлер

1
если результат не чувствителен к регистру, то put ("c") сохраняет несколько байтов и не использует прописные буквы C ... Правила могут потребовать редактирования тогда
Флориан Кастеллан

4

Vim, 3 байта

:h<CR>

Попробуйте онлайн!

Это открывает файл справки по умолчанию и выводит:

*help.txt*  For Vim version 7.4.  Last change: 2016 Mar 31

                        VIM - main help file
                                                                         k
      Move around:  Use the cursor keys, or "h" to go left,        h   l
                    "j" to go down, "k" to go up, "l" to go right.   j
Close this window:  Use ":q<Enter>".
   Get out of Vim:  Use ":qa!<Enter>" (careful, all changes are lost!).

Jump to a subject:  Position the cursor on a tag (e.g. |bars|) and hit CTRL-].
   With the mouse:  Double-click the left mouse button on a tag, e.g. |bars|.
        Jump back:  Type CTRL-T or CTRL-O.  Repeat to go further back.

Get specific help:  It is possible to go directly to whatever you want help
                    on, by giving an argument to the |:help| command.
                    Prepend something to specify the context:  *help-context*

                          WHAT          PREPEND    EXAMPLE  ~
                      Normal mode command          :help x
                      Visual mode command     v_       :help v_u
                      Insert mode command     i_       :help i_<Esc>
                      Command-line command    :    :help :quit
                      Command-line editing    c_       :help c_<Del>
                      Vim command argument    -    :help -r
                      Option              '    :help 'textwidth'
                      Regular expression      /    :help /[
                    See |help-summary| for more contexts and an explanation.

  Search for help:  Type ":help word", then hit CTRL-D to see matching
                    help entries for "word".
                    Or use ":helpgrep word". |:helpgrep|

VIM stands for Vi IMproved.  Most of VIM was made by Bram Moolenaar, but only
through the help of many others.  See |credits|.
------------------------------------------------------------------------------
                                                *doc-file-list* *Q_ct*
BASIC:
|quickref|  Overview of the most common commands you will use
|tutor|     30 minutes training course for beginners
|copying|   About copyrights
|iccf|      Helping poor children in Uganda
|sponsor|   Sponsor Vim development, become a registered Vim user
|www|       Vim on the World Wide Web
|bugs|      Where to send bug reports

USER MANUAL: These files explain how to accomplish an editing task.

|usr_toc.txt|   Table Of Contents

Getting Started ~
|usr_01.txt|  About the manuals
|usr_02.txt|  The first steps in Vim
|usr_03.txt|  Moving around
|usr_04.txt|  Making small changes
|usr_05.txt|  Set your settings
|usr_06.txt|  Using syntax highlighting
|usr_07.txt|  Editing more than one file
|usr_08.txt|  Splitting windows
|usr_09.txt|  Using the GUI
|usr_10.txt|  Making big changes
|usr_11.txt|  Recovering from a crash
|usr_12.txt|  Clever tricks

Editing Effectively ~
|usr_20.txt|  Typing command-line commands quickly
|usr_21.txt|  Go away and come back
|usr_22.txt|  Finding the file to edit
|usr_23.txt|  Editing other files
|usr_24.txt|  Inserting quickly
|usr_25.txt|  Editing formatted text
|usr_26.txt|  Repeating
|usr_27.txt|  Search commands and patterns
|usr_28.txt|  Folding
|usr_29.txt|  Moving through programs
|usr_30.txt|  Editing programs
|usr_31.txt|  Exploiting the GUI
|usr_32.txt|  The undo tree

Tuning Vim ~
|usr_40.txt|  Make new commands
|usr_41.txt|  Write a Vim script
|usr_42.txt|  Add new menus
|usr_43.txt|  Using filetypes
|usr_44.txt|  Your own syntax highlighted
|usr_45.txt|  Select your language


REFERENCE MANUAL: These files explain every detail of Vim.  *reference_toc*

General subjects ~
|intro.txt| general introduction to Vim; notation used in help files
|help.txt|  overview and quick reference (this file)
|helphelp.txt|  about using the help files
|index.txt| alphabetical index of all commands
|help-tags| all the tags you can jump to (index of tags)
|howto.txt| how to do the most common editing tasks
|tips.txt|  various tips on using Vim
|message.txt|   (error) messages and explanations
|quotes.txt|    remarks from users of Vim
|develop.txt|   development of Vim
|debug.txt| debugging Vim itself
|uganda.txt|    Vim distribution conditions and what to do with your money

Basic editing ~
|starting.txt|  starting Vim, Vim command arguments, initialisation
|editing.txt|   editing and writing files
|motion.txt|    commands for moving around
|scroll.txt|    scrolling the text in the window
|insert.txt|    Insert and Replace mode
|change.txt|    deleting and replacing text
|indent.txt|    automatic indenting for C and other languages
|undo.txt|  Undo and Redo
|repeat.txt|    repeating commands, Vim scripts and debugging
|visual.txt|    using the Visual mode (selecting a text area)
|various.txt|   various remaining commands
|recover.txt|   recovering from a crash

Advanced editing ~
|cmdline.txt|   Command-line editing
|options.txt|   description of all options
|pattern.txt|   regexp patterns and search commands
|map.txt|   key mapping and abbreviations
|tagsrch.txt|   tags and special searches
|quickfix.txt|  commands for a quick edit-compile-fix cycle
|windows.txt|   commands for using multiple windows and buffers
|tabpage.txt|   commands for using multiple tab pages
|syntax.txt|    syntax highlighting
|spell.txt| spell checking
|diff.txt|  working with two to four versions of the same file
|autocmd.txt|   automatically executing commands on an event
|filetype.txt|  settings done specifically for a type of file
|eval.txt|  expression evaluation, conditional commands
|fold.txt|  hide (fold) ranges of lines

Special issues ~
|print.txt| printing
|remote.txt|    using Vim as a server or client
|term.txt|  using different terminals and mice
|digraph.txt|   list of available digraphs
|mbyte.txt| multi-byte text support
|mlang.txt| non-English language support
|arabic.txt|    Arabic language support and editing
|farsi.txt| Farsi (Persian) editing
|hebrew.txt|    Hebrew language support and editing
|russian.txt|   Russian language support and editing
|ft_ada.txt|    Ada (the programming language) support
|ft_sql.txt|    about the SQL filetype plugin
|rileft.txt|    right-to-left editing mode

GUI ~
|gui.txt|   Graphical User Interface (GUI)
|gui_w32.txt|   Win32 GUI

Interfaces ~
|if_cscop.txt|  using Cscope with Vim
|if_pyth.txt|   Python interface
|if_ruby.txt|   Ruby interface
|debugger.txt|  Interface with a debugger
|sign.txt|  debugging signs

Versions ~
|vim_diff.txt|  Main differences between Nvim and Vim
|vi_diff.txt|   Main differences between Vim and Vi
                                                *sys-file-list*
Remarks about specific systems ~
|os_win32.txt|  MS-Windows
                                                *standard-plugin-list*
Standard plugins ~
|pi_gzip.txt|      Reading and writing compressed files
|pi_netrw.txt|     Reading and writing files over a network
|pi_paren.txt|     Highlight matching parens
|pi_tar.txt|       Tar file explorer
|pi_vimball.txt|   Create a self-installing Vim script
|pi_zip.txt|       Zip archive explorer

LOCAL ADDITIONS:                *local-additions*

------------------------------------------------------------------------------
*bars*      Bars example

Now that you've jumped here with CTRL-] or a double mouse click, you can use
CTRL-T, CTRL-O, g<RightMouse>, or <C-RightMouse> to go back to where you were.

Note that tags are within | characters, but when highlighting is enabled these
characters are hidden.  That makes it easier to read a command.

Anyway, you can use CTRL-] on any word, also when it is not within |, and Vim
will try to find help for it.  Especially for options in single quotes, e.g.
'hlsearch'.

------------------------------------------------------------------------------
 vim:tw=78:fo=tcq2:isk=!-~,^*,^\|,^\":ts=8:ft=help:norl:
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.