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 code-golf donc le code le plus court gagne.
--version
ne soit pas autorisé"?Réponses:
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
Erreur:
Lua, 1 octet
Erreur:
(le nom de fichier est sans importance)
Lot, 1 octet
Erreur:
tinylisp, 5 octets
Erreur:
R, 1 octet
Erreur:
Code Java, 0 octet
Erreur:
Groovy, 1 octet
Notez que vous
a
pouvez remplacer tout autre caractèreErreur:
MATLAB, 1 octet
Erreur:
PHP, 3 octets
Erreur:
CJam, 1 octet
Erreur:
Rameau, 2 octets
Twig est un langage de template écrit en PHP. Il est possible que ce soit un polyglotte.
Erreur:
Le message varie en fonction du programme que vous choisissez.
SILOS , 2 octets
Essayez-le en ligne! Invoque de manière triviale un comportement non documenté. Silos est le nom de la langue.
Python, 6 octets
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:
Essayez-le en ligne! (sorties vers l'onglet 'debug')
JavaScript, 10 octets
Cela produit le message d'erreur suivant ou similaire dans tous les environnements:
QBIC , 6 octets
Dans 6 octets, nous pouvons placer l'erreur QBIC: 9 à l'écran, ce qui signifie une erreur hors limites.
ForceLang, 2 octets
Erreur produite:
Pip, 5 octets
(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:
Stax, 2 octets
Erreur:
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:la source
SmileBASIC, 11 octets
Équivalent à
SPSET 0,1474
. Définit l’image-objet 0 sur la définition 1474, qui correspond au logo SmileBASIC.la source
MATL , 1 octet
La sortie s'effectue via STDERR, qui est autorisé par défaut .
La sortie du compilateur hors ligne est
Ou essayez-le en ligne! (développez la section "debug").
la source
X
ouZ
. En effetX
,Y
ouZ
sont des préfixes de noms de fonction à deux caractères, de sorte qu'unY
seul est invalideR, 1 octet:
T
est un alias pour la constanteTRUE
. Donc, le résultat pour ce qui précède est:É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».)
la source
HTML,
2420 octetsHTML, 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.
HTML, 4 octets
Et bien sûr, la réponse sans intérêt.
Voir aussi ma réponse CSS .
la source
HTML
. 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).HTML
compte pas ?html
devrait être valide, réduisant le score de 12 octets.Vim, 0 octet
Lorsque vous démarrez Vim, l'éditeur affiche un écran de démarrage qui ressemble à ceci:
Vous pouvez le voir dit
Vim
ici:Réponse précédente:
Vim, 1 octet
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.la source
Python, 15 octets
Python 2 (15)
Il concatène les chaînes en utilisant l'octal
150
qui esth
et"elp()"
et exécute le résultat. Ceci affiche lahelp()
commande qui dit"Welcome to Python 3.5's help utility!"
, répondant aux exigences.Python 3 (17)
Essayez-le en ligne!
la source
help
compte, cela ne fonctionne que dans un environnement REPL.p
est autorisé maisP
ne l'est pas. Règle 1.C, 0 octet.
Essayez-le en ligne!
la source
c
venez 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 contenantc
une sortie standard.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.
la source
V , 2 octets
Essayez-le en ligne!
La réponse évidente est:
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 entreU
etÿ
.la source
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):
la source
MATLAB, 3 octets
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.la source
Octave
, donc vous ne pouvez pas utiliserv
ete
.Python,
2753494845 octets-3 octets de @ wizzwizz4
Imprime le texte suivant, qui a "Python" sur la première ligne.
la source
HELP()
ouHELP(HELP)
est plus courte.import this
.Python 2 (1 octet)
sortie...:
la source
0xa0
(nbsp) ou fondamentalement tout autre octet haut que vous aimez et vous obtiendrez la même erreur!> <> ,
1210 octetsCeci 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)
la source
"-o-o-o;_!\ _!
JAVA, 1 octet
La sortie sur stderr est:
la source
CSS, 25 octets
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
.html
fichier avec un contenupour voir le résultat comme prévu.
la source
bash CLI, 9
Si vous voulez un script réel et pas seulement une commande sur la ligne de commande interactive, vous pouvez le faire:
bash, 13
Les sorties
/bin/bash
la source
echo $0
devrait fonctionnerx $0
fonctionne, 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.$'ec\x68o' $0
guérit ce détail.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.la source
dc, 6
Sorties
dc
.Essayez-le en ligne .
la source
Pip , 8 octets
Prend le personnage
I
et l'WR
affiche enC
hr (80
), ce qui entraînePIP
. Essayez-le en ligne!En utilisant les
I
sensations un peu comme de la triche, voici deux solutions de 9 octets qui n'utilisent aucune des solutions suivantesPpIi
:Les deux sorties
pip
. Je suis particulièrement satisfait du second:Pour une capitalisation appropriée, nous avons besoin d’une solution à 10 octets :
Comment celui-ci fonctionne est laissé comme un exercice pour le lecteur. ; ^)
la source
C #,
6067 octetsla source
\u0043
etConsole
mais je ne peux pas l'utiliserC
selon les règles de la question. En C #, vous pouvez utiliser des séquences d'échappement Unicode dans des identificateurs._=>System.\u0043onsole.Write("\x43\x23");
brainfuck, 105 octets
Essayez-le en ligne ici
la source
---
dans votre démarque?R , 11 octets
Essayez-le en ligne!
la source
version$l
9 octetsversion
assez (7 bytes)Quatrième, 5 octets
Essayez-le en ligne
Imprime une liste de chaque mot de la langue.
Forth
se trouve être dans la liste (premier mot de la ligne 125), mais je ne sais pas ce que ça fait.la source
Hexagonie , 19 octets
Fondamentalement, un flux linéaire direct enveloppé à l'intérieur de l'hexagone.
Essayez cette solution non intéressante en ligne sur 19 octets!
Plus intéressant 28 octets:
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
Enregistre
I
dans 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 imprimere
.Le programme continue de faire des choses comme ça. J'ai découvert que j'aurais pu imprimer
n
en appelant la fonction après l'impressiono
. 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!
la source
J, 2 octets
a.
renvoie l'alphabet du langage J - une liste intégrée de tous les octets.Mon original: 4 octets
Cela me semble plutôt cool. La racine carrée (
%:
) de 1 (_1
) négatif est i (0j1
).la source
a.
. Imprime l'alphabet, qui inclut évidemment 'J'. Certainement pas aussi cool cependant: /BASIC (spectre ZX),
4 à2 octets4 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
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..9999
qui 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
qui sort
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
POKE
pour remplacer avec un mot clé illégal, puis tentezRUN
le programme.la source
0 REM
produit la même erreurC
2420 octets (texte 3.8.1)Merci à @squeamish ossifrage de m'avoir aidé à économiser 4 octets.
la source
putchar(67);
vousprintf('c')
aussi valide? Vous n'êtes pas autorisé à utiliser "C" majuscule, mais vous êtes en minuscule et le résultat est insensible à la casse.printf
besoin d'un ordinateurchar *
donc j'ai besoin de l'utiliser""
Vim, 3 octets
Essayez-le en ligne!
Cela ouvre le fichier d’aide par défaut et génère:
la source