Nom du langage de programmation en sortie

45

Défi:

Dans le langage de programmation de votre choix, n'entrez aucune entrée et indiquez le nom de votre langage de programmation.

Assez juste, non?

Restrictions

  • Vous ne pouvez utiliser aucun caractère inclus dans le nom de votre langage de programmation dans votre code. Par exemple, si j'utilise Batch, je ne dois pas utiliser les caractères 'B' 'a' t '' c '' h 'dans mon code. Notez que ceci est sensible à la casse. Je peux toujours utiliser le caractère 'b' car il est différent de 'B'.
  • Vous pouvez avoir une "sortie indésirable" avant ou après le nom de la langue
  • Le numéro de version ne compte pas dans le nom de la langue. Par exemple, je peux utiliser le chiffre 3 dans le code de ma réponse s'il est en Python 3
  • La sortie du nom du langage de programmation n'est pas sensible à la casse.
  • Forcer brute toutes les combinaisons de lettres possibles et espérer que votre nom de langue soit interdit.

Exemples de sorties: (disons que mon langage de programmation s'appelle Language) (✔ s'il est valide, sinon ✖)

  • 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

C'est le donc le code le plus court gagne.

P. Ktinos
la source
7
La règle concernant les restrictions sensibles à la casse est très ambiguë. Quelle est l'orthographe correcte: BASIC Basic ou basic? Je suis à peu près sûr de pouvoir trouver des exemples pour les trois.
Level River St
7
Obligatoire "Il suffit que votre code soit vierge mais que le drapeau --versionne soit pas autorisé"?
Valeur d'encre
88
Avoir une sortie qui ne respecte pas la casse tout en interdisant le nom de langue casse permet des solutions ennuyeuses qui ne sortent que le nom de langue échangé par casse.
xnor
12
Vous avez commis une erreur en permettant aux utilisateurs de générer des données indésirables. Tout ce qu'ils ont à faire est d'utiliser un langage dans lequel le compilateur inclut le nom chaque fois qu'il y a une erreur. C'est cool, mais pas le défi que j'espérais
Lynob
3
Cette question doit vraiment être spécifiée que "Code" doit être exécuté. La plupart des langues afficheront leur nom dans le dump d’utilisation si vous ne donnez aucun code. Par exemple, "Java" ou "Groovy" sur la ligne de commande sans code affichera le nom correct. Toutefois, si vous passez le code (même " vide "code) comme dans (groovy -e" ") vous obtiendrez une réponse vide. De même pour les problèmes de compilation, l'utilisation du compilateur ou la sortie d'erreur ne signifie pas que vous avez écrit un programme.
Bill K

Réponses:

68

Sorties vers STDERR

La sortie vers STDERR est maintenant à + 33 / -21 par défaut, ce qui est positif mais contesté. Ceci est une réponse CW pour collecter des réponses qui invoquent simplement une erreur dans une langue où les messages d'erreur incluent le nom de la langue.

Haskell, 1 octet

1

Erreur:

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

Lua, 1 octet

1

Erreur:

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

(le nom de fichier est sans importance)

Lot, 1 octet

~

Erreur:

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

tinylisp, 5 octets

(c()1

Erreur:

Error: cannot cons to Int in tinylisp

R, 1 octet

)

Erreur:

Error: unexpected ')' in ")"

Code Java, 0 octet

Erreur:

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

Groovy, 1 octet

a

Notez que vous apouvez remplacer tout autre caractère

Erreur:

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

MATLAB, 1 octet

\

Erreur:

Error: Unexpected MATLAB operator.

PHP, 3 octets

<?=

Erreur:

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

CJam, 1 octet

/

Erreur:

/
^
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)

Rameau, 2 octets

Twig est un langage de template écrit en PHP. Il est possible que ce soit un polyglotte.

{{
{%
{#

Erreur:

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

Le message varie en fonction du programme que vous choisissez.

SILOS , 2 octets

x+

Essayez-le en ligne! Invoque de manière triviale un comportement non documenté. Silos est le nom de la langue.

Python, 6 octets

pYTHON

Comme la restriction de caractères est insensible à la casse et que la sortie ne doit pas obligatoirement être dans le bon cas, la réponse est valide. Le message d'erreur qu'il produit ressemble à ceci:

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

Essayez-le en ligne! (sorties vers l'onglet 'debug')

JavaScript, 10 octets

jAVAsCRIPT

Cela produit le message d'erreur suivant ou similaire dans tous les environnements:

ReferenceError: jAVAsCRIPT is not defined

QBIC , 6 octets

?b(12)

Dans 6 octets, nous pouvons placer l'erreur QBIC: 9 à l'écran, ce qui signifie une erreur hors limites.

ForceLang, 2 octets

()

Erreur produite:

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)

Pip, 5 octets

1~`[`

(Remarque: cela fonctionne dans la version actuelle à la date d'écriture actuelle, 0.17.09.01 . No garantit que l'interpréteur ne changera pas pour gérer cette erreur différemment à l'avenir.)

Essaie de faire correspondre les expressions rationnelles à un modèle syntaxiquement invalide. L'erreur produite ressemblera à quelque chose comme ceci:

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 octets

0u

Erreur:

Stax runtime error: rational divide by zero

zh fonctionne aussi.

encre, 1 octet

~

~au début d'une ligne, elle indique qu'il s'agit d'une instruction à exécuter et non d'un texte à imprimer. Quelle que soit la version de inklecate TIO utilisée, s’il n’ya rien après ~, l’interprète se bloque avec l’erreur suivante:

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 
DLosc
la source
18
La chaîne vide n'est-elle pas contenue dans le nom de la langue? : D
mbomb007
21
Ceux C et R sont c leve r .
DLosc
2
@ mbomb007 mais ce n'est pas un caractère, donc ce n'est pas un caractère inclus dans le nom de la langue.
user253751
1
Le SILOS compte-t-il? Il ne sort pas les périodes.
Business Cat
10
" Code Java, 0 octet ". La première fois que je vois Java triompher de tous les autres langages mentionnés. :)
Kevin Cruijssen
49

SmileBASIC, 11 octets

sPsET.,1474

Équivalent à SPSET 0,1474. Définit l’image-objet 0 sur la définition 1474, qui correspond au logo SmileBASIC.

Capture d'écran

12Me21
la source
44

MATL , 1 octet

Y

La sortie s'effectue via STDERR, qui est autorisé par défaut .

La sortie du compilateur hors ligne est

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); 

Ou essayez-le en ligne! (développez la section "debug").

Luis Mendo
la source
7
Devez-vous fusionner avec cela ?
wizzwizz4
@ wizzwizz4 Je ne suis pas sûr. J'ai demandé dans le chat et j'ai obtenu ces deux réponses , donc ce n'est pas vraiment clair
Luis Mendo
1
ouais mais toi?
Sagiksp
@sagiksp Tout ce qui génère une erreur fera l'affaire, Xou Z. En effet X, You Zsont des préfixes de noms de fonction à deux caractères, de sorte qu'un Yseul est invalide
Luis Mendo le
38

R, 1 octet:

T

Test un alias pour la constante TRUE. Donc, le résultat pour ce qui précède est:

[1] TRUE

Étant donné que le courrier indésirable est autorisé autour du nom, le «R» est le nom de la langue.

( Comme indiqué dans un commentaire ailleurs , pratiquement toute lettre et plusieurs glyphes fonctionneront aussi bien car ils déclenchent le message «Erreur:…», qui contient «r».)

Konrad Rudolph
la source
31

HTML, 24 20 octets

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


HTML, 16 octets

Comme l'a souligné @Bob , les navigateurs modernes reconnaîtront les entités HTML sans point-virgule, bien que ce soit un code HTML techniquement non valide. Bien sûr, il est parfaitement valable pour le code golf.

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


HTML, 4 octets

Et bien sûr, la réponse sans intérêt.

html


Voir aussi ma réponse CSS .

Darrylyeo
la source
3
Vous pouvez enregistrer quatre caractères en utilisant décimal à la place: &#72;&#84;&#77;&#76;. Vous pouvez enregistrer quatre caractères supplémentaires en supprimant les points-virgules, au prix d'un code HTML techniquement incorrect (mais fonctionnant toujours dans les navigateurs modernes).
Bob
Pourquoi ne HTMLcompte pas ?
Cessez de nuire à Monica le
1
@OrangeDog "Vous ne pouvez utiliser aucun caractère inclus dans le nom de votre langage de programmation dans votre code"
darrylyeo
Mais htmldevrait être valide, réduisant le score de 12 octets.
Christoph
3
@Clearer C'est du code golf! Tant que cela fonctionne dans au moins un environnement, qui se soucie de savoir si le W3C pense que c'est valable?
darrylyeo
26

Vim, 0 octet



Lorsque vous démarrez Vim, l'éditeur affiche un écran de démarrage qui ressemble à ceci:

Écran de démarrage Vim

Vous pouvez le voir dit Vimici:

Écran de démarrage de Vim avec Vim en surbrillance

Réponse précédente:

Vim, 1 octet

<Ctrl-C>

Dans Vim 8, appuyer sur affichera Type :quit<Enter> to exit Vimà la dernière ligne. Je ne suis pas tout à fait sûr que cela compte.

Loovjo
la source
1
Ça devrait compter. Ctrl-C a en fait son propre code ASCII (code 3, également appelé ETX ou "fin de texte"), donc il s’agit d’un programme purement ASCII (s’il n’est pas purement imprimable ). Vous pouvez l'utiliser pour prouver que le programme a un octet de long et que l'affichage du texte à l'écran compte.
4
Depuis quand "vim" est-il un langage de programmation?
DepressedDaniel
4
@DepressedDaniel vim est en fait un langage de script si vous examinez de plus près les éléments internes. Toutes ces séquences de touches fantaisistes sont des instructions => vous programmez lorsque vous contrôlez votre éditeur.
bash0r
1
@DepressedDaniel est-il complet? Si ce n'est pas le cas, je ne pense pas que cela devrait compter.
Clearer
3
@dfeuer Je suis d'accord avec vous depuis que j'ai fait ce commentaire il y a plus de 2 ans.
Clairière
20

Python, 15 octets

Python 2 (15)

exec"\150elp()"

Il concatène les chaînes en utilisant l'octal 150qui est het "elp()"et exécute le résultat. Ceci affiche la help()commande qui dit "Welcome to Python 3.5's help utility!", répondant aux exigences.

Python 3 (17)

exec("\150elp()")

Essayez-le en ligne!

caird coinheringaahing
la source
Pas sûr que cela helpcompte, cela ne fonctionne que dans un environnement REPL.
xnor
Il imprime toujours le Python. C'est tout ce qui est nécessaire.
1
Peu importe, je me suis trompé et cela fonctionne comme un programme. Désolé pour ça.
xnor
1
vous avez utilisé la lettre 'p'
Matt le
3
pest autorisé mais Pne l'est pas. Règle 1.
18

C, 0 octet.

/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

Essayez-le en ligne!

Cees Timmerman
la source
où est le nom? Ou faites-vous référence aux caractères c ici?
Espérons
3
Cela devrait être marqué comme C (gcc), car les autres compilateurs ont des messages différents.
Orlp
Meh, vous cvenez de sources extrêmement dépendantes de la mise en oeuvre. Cela aurait été plus agréable si vous aviez au moins provoqué un message contenant cune sortie standard.
DepressedDaniel
1
@DepressedDaniel non définie référen c e à 'main'
Loren Pechtel
@ LorenPechtel assez juste, raté ça.
DepressedDaniel
17

Hein ?, 0 octet



(non, il n'y a rien dans ce bloc de code)

Le langage est nommé pour sa sortie, alors ...

Dans l'implémentation que j'ai vérifiée , l'interprète prend la longueur mod 8 de chaque ligne d'un fichier donné et bascule en fonction du résultat. Pour zéro, ça imprime Huh?. Comme il supprime les retours à la ligne, vous pouvez également créer une version à 1 octet ( \n).

Notez que cela ne sort pas avec stderr ou échange de cas ou toute autre supercherie. C'est juste que l'interprète très confus de Huh? S'est finalement révélé utile.

Flambino
la source
Attendez, ce langage est-il complet?
Bonjour au revoir il y a
13

V , 2 octets

¬U

Essayez-le en ligne!

La réponse évidente est:

év~

Essayez-le en ligne!

Ce qui est "Insère la lettre 'v', et bascule la casse". Cependant, puisque vous autorisez la sortie indésirable avant / après le nom de la langue, cela fonctionne également.

La ¬commande prend deux caractères pour l'entrée et insère chaque caractère ASCII entre eux. Si nous ne fournissons pas le deuxième caractère, sa valeur par défaut sera automatiquement ÿ(ASCII 0xff), de sorte que ce programme insère chaque caractère du codage latin1 entre Uet ÿ.

DJMcMayhem
la source
13

brainfuck , 54 octets

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

Sorties brainfuck, en supposant qu'une bande 8 bits soit ouverte à gauche. Essayez-le en ligne!

Comme toujours, les crédits partiels vont à Hello, World! répondre .

Alternatives avec différents boîtiers

Brainfuck (62 bytes):

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

BrainFuck (68 bytes):

-[[-<]->+[->]<-]<<.<<<<<--.>>+.<-.+++++.>>>------.<<<<+++.>>++.<---.
Sp3000
la source
12

MATLAB, 3 octets

ver

La sortie est comme suit. Les informations non pertinentes ont été remplacées par [...]). Certaines parties de la sortie peuvent changer en fonction de la version, des boîtes à outils installées, etc.

-----------------------------------------------------------------------------------------
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)
Luis Mendo
la source
Utilise av et un e
Votre langue est Octave, donc vous ne pouvez pas utiliser vet e.
JungHwan Min
6
Woops. Corrigé en changeant de langue en Matlab (ce qui était de toute façon mon intention initiale)
Luis Mendo
12

Python, 27 53 49 48 45 octets

-3 octets de @ wizzwizz4

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

Imprime le texte suivant, qui a "Python" sur la première ligne.

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!
Valeur d'encre
la source
1
@Arnauld corrigé!
Valeur Ink
1
HELP()ou HELP(HELP)est plus courte.
Gurupad Mamadapur
Peu importe si vous échangez la casse de la chaîne d'importation, car vous la placez quand même en minuscule. -3 octets.
wizzwizz4
@GurupadMamadapur, la réponse à Python 3 le couvrait déjà et mieux (je suis sûr que mon code serait exactement le même), je ne suis donc pas d'humeur à l'utiliser aussi. Je suppose que je m'en tiens à import this.
Value Ink
@ValueInk Très bien alors.
Gurupad Mamadapur
12

Python 2 (1 octet)

è

sortie...:

sortie

Max
la source
Êtes-vous sûr qu'il ne s'agit que d'un octet?
Okx
1
D'accord. C'est 2 octets dans UTF-8
mbomb007
La clé est "non-ASCII" - essayez 0xa0(nbsp) ou fondamentalement tout autre octet haut que vous aimez et vous obtiendrez la même erreur!
John P
3
Il s’agit d’un octet dans Win1252, ce que le message d’erreur indique qu’il utilise.
ATaco
10

> <> , 12 10 octets

"2,:o:2-o|

Ceci imprimera continuellement> <> jusqu'à ce que l'interprète manque d'espace.

Essayez-le en ligne!

Version 12 octets ci-dessous pour ceux qui aiment une sortie propre. Recommandé par Aaron (pas d'erreur, 1 sortie)

":3+:o$1+oo;
Sarcelle
la source
Solution brillante!
Emigna
@Emigna - Merci, la version finale était après un tas de golfes ratés mais je l'aime bien car avec l'erreur elle imprime> <> et poisson: D
Teal pélican
Joli ! Voici une version de 14 octets qui ne s'imprime qu'une seule fois et ne fait pas d'erreur:"-o-o-o;_!\ _!
Aaron
@Aaron, si vous cochez la case d'édition, la première version l'a fait à 12 ans. J'aime la propreté de votre tête :)
Teal Pelican
J'aime votre version de 12 octets (les 10 octets aussi :)), je pense que vous auriez dû la laisser incluse dans votre réponse comme un aparté ("pour ceux qui aiment une sortie nette, [...]")!
Aaron
9

JAVA, 1 octet

1

La sortie sur stderr est:

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 
t77
la source
15
Ceci est une sortie de compilation plutôt que d'exécuter le programme. Je ne sais pas si cela est autorisé par défaut.
CAD97
2
En outre, si vous choisissez une extension de fichier différente, le résultat ne sera pas "java", n'est-ce pas? (Je ne sais pas si c'est possible avec Java.)
Jonas Schäfer
11
si vous passez de java en bytecode java, vous pouvez réduire le nombre de caractères. essayer d'exécuter un fichier de classe vide java.lang.ClassFormatError
user902383
2
Les programmes qui sortent sur stderr doivent être modifiés dans cette réponse .
mbomb007
8

CSS, 25 octets

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

Notez que des balises supplémentaires sont ajoutées aux extraits de débordement de pile, ce qui provoque l'affichage de "CSS" plusieurs fois. Ouvrir un .htmlfichier avec un contenu

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

pour voir le résultat comme prévu.

Darrylyeo
la source
7

bash CLI, 9

printf $0

Si vous voulez un script réel et pas seulement une commande sur la ligne de commande interactive, vous pouvez le faire:

bash, 13

printf $SHELL

Les sorties /bin/bash

Trauma numérique
la source
1
echo $0devrait fonctionner
ossifrage délirant
@squeamishossifrage Cela fonctionne sur la ligne de commande du shell, mais dans un script, il affiche le nom du script.
Digital Trauma
1
x $0fonctionne, en supposant qu'il n'y a pas d'exécutable appelé x sur le chemin. Dans ce cas, remplacez toute autre lettre, chiffre ou caractère non spécial.
nigel222
2
"h" est un caractère illégal pour vous, et vous l'utilisez en écho
user902383
2
$'ec\x68o' $0guérit ce détail.
manatwork
7

C, 15 octets

C compilé sur une machine Linux avec une locale allemande:

main(){main();}

Il fonctionnera à un débordement de pile et imprimera Speicherzugriffsfehler(allemand pour l'erreur de segmentation) sur stderr.

12431234123412341234123
la source
............ :-D
Alfe
6

Pip , 8 octets

'IWR C80

Prend le personnage Iet l' WRaffiche en Chr ( 80), ce qui entraîne PIP. Essayez-le en ligne!

En utilisant les Isensations un peu comme de la triche, voici deux solutions de 9 octets qui n'utilisent aucune des solutions suivantesPpIi :

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

Les deux sorties pip. Je suis particulièrement satisfait du second:

    ^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

Pour une capitalisation appropriée, nous avons besoin d’une solution à 10 octets :

'IWR C80Vx

Comment celui-ci fonctionne est laissé comme un exercice pour le lecteur. ; ^)

DLosc
la source
6

C #, 60 67 octets

class P{static void Main(){System.\u0043onsole.Write("\x43\x23");}}
Bob
la source
Est-ce vraiment votre réponse, ou un bug vous a-t-il gaché la réponse?
vendredi
@auhmaan Désolé, corrigé . J'ai initialement testé sur LINQPad et oublié qu'il comporte quelques importations d'espace de nom par défaut.
Bob le
Je faisais allusion à \u0043et
alikes
1
@auhmaan C'est intentionnel parce que j'ai besoin de Consolemais je ne peux pas l'utiliser Cselon les règles de la question. En C #, vous pouvez utiliser des séquences d'échappement Unicode dans des identificateurs.
Bob
3
Je suis sûr que vous pouvez utiliser une méthode anonyme pour cela, je ne vois pas de restriction exigeant un programme complet, donc vous pourriez le faire_=>System.\u0043onsole.Write("\x43\x23");
TheLethalCoder
6

brainfuck, 105 octets

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

Essayez-le en ligne ici

TrojanByAccident
la source
7
Bon, pas de problème dans BrainFuck;)
devRicher
@devRicher pas du tout;)
TrojanByAccident
@ mbomb007 je vois.
TrojanByAccident
@ mbomb007 mis à jour
TrojanByAccident
Y at-il une raison pour l'excès ---dans votre démarque?
FlipTack
5

R , 11 octets

cat("\x52")

Essayez-le en ligne!

Lyth
la source
version$l9 octets
décembre
2
C'est probablement versionassez (7 bytes)
mercredi
1
Ou juste 'r'. 3 octets.
Konrad Rudolph
@ KonradRudolph Vous ne pouvez pas utiliser ... attendez; les spécifications sont sensibles à la casse lors de la vérification mais pas de la sortie ... Intelligent.
wizzwizz4
@ wizzwizz4 Ouais… mais j'ai depuis posté une solution qui ne nécessite qu'un seul personnage et obtient même le cas.
Konrad Rudolph
5

Quatrième, 5 octets

WORDS

Essayez-le en ligne

Imprime une liste de chaque mot de la langue. Forthse trouve être dans la liste (premier mot de la ligne 125), mais je ne sais pas ce que ça fait.

mbomb007
la source
5

Hexagonie , 19 octets

Fondamentalement, un flux linéaire direct enveloppé à l'intérieur de l'hexagone.

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

Essayez cette solution non intéressante en ligne sur 19 octets!

Plus intéressant 28 octets:

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

Essayez-le en ligne!

Cela utilise le petit h, ce qui est permis. Utilise l'IP1 (l'initiale est 0) en tant que "fonction" qui fait "Décrémenter et imprimer en tant que caractère".

Vue élargie

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

Enregistre Idans la mémoire, passez au pointeur d'instruction suivant avec ], puis IP1 va du coin NE vers le sud-est et ..>clique pour diriger vers E, encapsulé dans le bas 5 no-ops .puis pour ((décrémenter), ;(imprimer en tant que caractère) et puis [qui retourne à IP0.

IP0 commence à lire à partir de là où il s’est arrêté f, passe par le no-op .et le milieu ]qui exécute à nouveau la "fonction": IP1 commence à partir de là où il s’est arrêté et clique sur no-op .puis $qui saute le >et retourne au bas de la fenêtre .. pour imprimer e.

Le programme continue de faire des choses comme ça. J'ai découvert que j'aurais pu imprimer nen appelant la fonction après l'impression o. Mm .. n'arrive pas à penser à des façons de raccourcir cela davantage même si je remplace 1 octet par no-op par cette découverte.

Laissez-moi un commentaire si vous voulez voir des diagrammes dans cette explication!

Sunny Pun
la source
5

J, 2 octets

   a.


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

a. renvoie l'alphabet du langage J - une liste intégrée de tous les octets.

Mon original: 4 octets

   %:_1
0j1

Cela me semble plutôt cool. La racine carrée ( %:) de 1 ( _1) négatif est i ( 0j1).

Danois
la source
1
2 Octets a.. Imprime l'alphabet, qui inclut évidemment 'J'. Certainement pas aussi cool cependant: /
Bolce Bussiere
Je dois jouer au golf. :-) Cela dit, je suis attaché à ma réponse originale.
Dane
5

BASIC (spectre ZX), 4 à 2 octets

4 barrés sont encore réguliers 4

2 octets sauvés grâce à @ShaunBebbers.

Remarque: dans le jeu de caractères ZX Spectrum, ces octets s’affichent sous la forme

0 PRINT

Lorsque vous entrez ceci, Spectrum commence par analyser un nombre facultatif suivi d'une ligne de code. Normalement, c'est le numéro de ligne 1..9999qui provoque l'ajout du code au programme enregistré. Cependant, si aucun numéro de ligne n'est fourni, le code est exécuté immédiatement. Malheureusement, un bogue dans Spectrum signifie qu’il confond un numéro de ligne égal à zéro sans indiquer aucun numéro de ligne, mais il tente toujours d’exécuter le zéro dans le cadre de la ligne de code, ce qui est illégal, ce qui provoque l’erreur.

La version précédente de 4 octets générait une erreur vraie plutôt que de s'appuyer sur un bogue d'interprétation:

õ°""

Remarque: dans le jeu de caractères ZX Spectrum, ces octets s’affichent sous la forme

PRINT VAL ""

qui sort

C Nonsense in BASIC, 0:1

parce que la chaîne vide n'est pas une expression numérique valide. (J'aurais bien sûr pu utiliser n'importe quelle instruction prenant un seul entier.) Si cette réponse est inacceptable, alors vous pouvez écrire un programme consistant en une seule ligne avec l'un des mots-clés n'acceptant aucun argument, utilisez ensuite POKEpour remplacer avec un mot clé illégal, puis tentez RUNle programme.

Neil
la source
ou 0 REMproduit la même erreur
Shaun Bebbers
1
@ShaunBebbers Est-ce que cela passe même la vérification de la syntaxe?
Neil
oui c'est le cas sur un vrai spectre.
Shaun Bebbers
4

C 24 20 octets (texte 3.8.1)

Merci à @squeamish ossifrage de m'avoir aidé à économiser 4 octets.

main(){putchar(67);}
Wade Tyler
la source
Que diriez- putchar(67);vous
ossifrage délirant
@squeamishossifrage oui, merci
Wade Tyler
Juste curieux, mais ne serait pas printf('c')aussi valide? Vous n'êtes pas autorisé à utiliser "C" majuscule, mais vous êtes en minuscule et le résultat est insensible à la casse.
Jocie
1
@Jocie a printfbesoin d'un ordinateur char *donc j'ai besoin de l'utiliser""
Wade Tyler
1
si le résultat n'est pas sensible à la casse, puis met ("c") enregistre quelques octets et n'utilise pas de C majuscule ... Les règles peuvent nécessiter une modification alors
Florian Castellane
4

Vim, 3 octets

:h<CR>

Essayez-le en ligne!

Cela ouvre le fichier d’aide par défaut et génère:

*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:
DJMcMayhem
la source