Hacer un error quine!


104

Su desafío: escriba un "programa", para un idioma de su elección, que haga que el compilador / intérprete / tiempo de ejecución produzca una salida de error al compilar / ejecutar su programa que sea idéntico al código fuente de su programa.

Reglas:

  • Su programa puede ser específico para una versión o implementación particular del entorno de compilación / interpretación / tiempo de ejecución de su idioma. En caso afirmativo, especifique los detalles.
  • Solo se permiten las opciones estándar de compilador / intérprete / tiempo de ejecución. No puede pasar una bandera extraña a su compilador para obtener un resultado específico.
  • El programa no necesita ser sintácticamente o semánticamente válido, pero puedo dar una recompensa por la mejor presentación sintácticamente válida.
  • El programa no debe producir ninguna salida propia (por ejemplo, llamando a una función de impresión o salida). Todos los resultados generados al intentar compilar / ejecutar el programa deben originarse desde el compilador / intérprete / runtime.
  • El resultado completo del compilador / intérprete / tiempo de ejecución debe ser exactamente idéntico al código fuente de su programa.
  • El compilador / intérprete / runtime debe generar al menos un mensaje de error cuando se invoca con su programa.

Este es un concurso de popularidad . La respuesta más creativa, según lo determinado por los votos positivos, gana. Si puede dar un buen caso para usar una escapatoria estándar, puede hacerlo.


77
¿Qué es " error de salida "? ¿Y qué significa " generar un mensaje de error "? Más específicamente: 1) ¿La salida tiene que ser stderr? 2) Si el tiempo de ejecución registra un error en syslog y no escribe nada en stderr, ¿qué se debe comparar con la fuente del programa? 3) Si el tiempo de ejecución arroja una excepción internamente cuando se le da un programa vacío, pero requiere un indicador para imprimir realmente la excepción y termina saliendo con un código de salida distinto de cero pero sin salida, ¿se ha generado un mensaje de error?
Peter Taylor

1
Intenté hacer esto en Java y obtuve un oscilador p3. Esta fue la fase más corta: (Compilación de q.java):Error: Could not find or load main class Q
SuperJedi224

2
Ja, debido a una ambigüedad sintáctica en la primera oración, pensé que el desafío aquí era producir un programa que normalmente no produce salida, pero si le pasa su propio código como entrada, produce un error.
Steve Bennett

2
Al informar un error, APL siempre imprime un nombre de error personalizable, opcionalmente un mensaje de error, el nombre del programa que causó el error, el número de línea (entre paréntesis) donde ocurrió el error, la línea de código que causó el error y un línea con un cursor que indica dónde se detuvo el análisis. ¿Alguna esperanza de participación aquí?
Adám

1
@SteveBennett ¿Por qué aún no has hecho ese desafío?
CalculatorFeline

Respuestas:


117

Ed (1 byte)

Todas las otras soluciones hasta ahora son largas y feas. Supongo que eso se debe a la naturaleza de la mayoría de los mensajes de error. Pero un buen mensaje de error es elegante en su simplicidad. Para eso, no busques más que ed.

?

Guarde esto en un archivo llamado edscripty ejecute con ed < edscripto ejecute ed<<<?. El resultado:

?

El signo de interrogación se escribe en stderr y ed devuelve 1, por lo que en realidad es un mensaje de error. Me pregunto por qué ed no es muy popular.

Falso (0 bytes)

Corre con false filename. Escribe el código fuente del programa (es decir, nada) en stderr y devuelve 1. Por supuesto, llamar falso a un lenguaje de programación es cuestionable, y el cero byte quine no es original, pero pensé que podría agregarlo. Probablemente hay algún intérprete para un idioma que no imprime mensajes de error y podría reemplazar falso.

Ahora desearía que esto fuera código golf.


12
Estaba buscando en la (larga) lista de esolangs para encontrar un idioma como este. Esta es la debilidad de este desafío. No se trata de escribir un programa inteligente, se trata de elegir inteligentemente el idioma. : /
Ingo Bürk

23
@ IngoBürk Afortunadamente, este es un concurso de popularidad, no un golf.
esponjoso

El 0-byte False también es el mismo código que en algún momento ganó el premio "Peor Abuso de las Reglas" por el IOCCC por hacer la quinina teóricamente más corta. Sin embargo, tenía muchos errores de compilación y estaba escrito en K&R C, no en ISO C (que es más estricto).
Isiah Meadows

66
@ IngoBürk Muchos problemas de la vida real también tienen que ver con elegir inteligentemente el idioma. : P
Sarge Borsch

2
@Mendeleev * Quine (Hasta hace poco, siempre leía mal "quine" como "quinina" por alguna razón ...)
Isiah Meadows

119

Símbolo del sistema de Windows

& was unexpected at this time.

ingrese la descripción de la imagen aquí


Tenga en cuenta que esto |también funciona con .
MD XF

55
Y fue inesperado en este momento. +1
workoverflow

81

CoffeeScript, sintácticamente válido

Según lo probado en su sitio web usando Chrome o Firefox.

ReferenceError: defined is not defined

Puede reemplazarlo definedpor cualquier cosa que no sea una variable incorporada, pero pensé que esta versión era divertida. Desafortunadamente, undefined is not defineden particular no funciona como una quine.

En CoffeeScript esto ni siquiera es un error de sintaxis, porque se compila. Esto es técnicamente un error de tiempo de ejecución en JavaScript, aunque aburrido. CoffeeScript es un candidato probable para producir algunos errores de tiempo de ejecución más interesantes porque muchas frases divertidas son códigos válidos. Por ejemplo, el ejemplo anterior se compila a

({
  ReferenceError: defined === !defined
});

2
definedes por definedition defined. ¿Qué ... cómo ...?
CalculatorFeline

3
Undefined is not defined(con mayúscula U) parece funcionar jajaja
Shieru Asakoto

50

Pitón

Spyder

Bueno, una solución bastante trivial para el Spyder IDE es plantear a SyntaxError.

Código y salida idéntica:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Applications/Spyder.app/Contents/Resources/lib/python2.7/spyderlib/widgets/externalshell/sitecustomize.py", line 540, in runfile
    execfile(filename, namespace)
  File "/Users/falko/golf.py", line 1
    Traceback (most recent call last):
                         ^
SyntaxError: invalid syntax

(Python 2.7.8 con Spyder 2.2.5)


Terminal

Una solución alternativa para Python comenzó con problemas en la línea de comandos con una sangría inesperada.

Mando:

python golf.py

Código y salida idéntica:

  File "golf.py", line 1
    File "golf.py", line 1
    ^
IndentationError: unexpected indent

ideone.com

En ideone.com una solución podría ser la siguiente. (¡Intentalo!)

Código y salida idéntica:

Traceback (most recent call last):

  File "<string>", line 1, in <module>
  File "/usr/lib/python2.7/py_compile.py", line 117, in compile
    raise py_exc
py_compile.PyCompileError: SyntaxError: ('invalid syntax', ('prog.py', 1, 22, 'Traceback (most recent call last):\n'))

(Esto es para Python 2. Un ejemplo para Python 3 es trivial pero con 15 líneas de "código" bastante largas).


Enfoque general:

¿Cómo crear su propia solución en 2 minutos?

  1. Abra un nuevo archivo en un IDE de su elección.
  2. Golpea tu cabeza con el teclado frente a ti.
  3. Compilar.
  4. Reemplace el código con el mensaje de error del compilador.
  5. Repita los pasos 3 y 4 hasta que el código converja.

¡Apuesto a que tal procedimiento termina bastante rápido en la mayoría de los casos!


66
Como probablemente pueda ver, estoy usando ese enfoque general. No funciona cuando el código copiado aumenta progresivamente la cantidad de errores del compilador. :-)
rink.attendant.6

99
@ rink.attendant.6: Es entonces cuando se requiere nuestro valioso conocimiento experto sobre ingeniería de software. ;)
Falko

@ rink.attendant.6 O cuando te envían corriendo en círculos. Pruébelo en la ventana inmediata de Excel-VBA.
Dennis Jaheruddin

45
Hice los pasos 1, 2 y 3, pero no pude hacer el paso 4, ¡el código perl era perfectamente válido!
rodolphito

Hola, ¿qué tal esto en el stock IDE de Python, SyntaxError: invalid syntaxproduce lo mismo también :)
Gurupad Mamadapur

42

> <> - 25 bytes

something smells fishy...

En Fish, cualquier instrucción incorrecta genera el error: "algo huele a pescado ...". Como s no es un comando válido, se produce un error de inmediato.


10
Tenga en cuenta que el nombre del idioma es> <>, que generalmente se pronuncia "pez".
Aaron

1
Y es realmente "Algo huele a pescado ..."
Conor O'Brien

3
@ CᴏɴᴏʀO'Bʀɪᴇɴ En el intérprete de Python, sí lo es something smells fishy..., pero está Something smells fishy...en el intérprete en línea. Depende del intérprete.
Addison Crump

1
@VTCAKAVSMoACE Ah, gracias.
Conor O'Brien

¡Cuz 'pez' es el nombre del programa / lenguaje de shell para los años 90 !
Nick T

41

Windows .EXE, 248 bytes

The version of this file is not compatible with the version of Windows you're running. Check your computer's system information to see whether you need an x86 (32-bit) or x64 (64-bit) version of the program, and then contact the software publisher.

No realmente. Guardar como quine.txt, luego renombrar a quine.exe(o descargarlo aquí ):


38

Espacio en blanco

Primero pensé que esto es claramente imposible. Pero en realidad es trivial también. -.-

Fail: Input.hs:108: Non-exhaustive patterns in function parseNum'

Intentalo.

Sí, mi primer programa de espacios en blanco! ;)


1
¿Podemos incluso llamar a esto un programa de espacios en blanco?
V. Courtois

1
¿Es esto un error de intérprete?
Immibis


29

JavaScript

Dado que diferentes navegadores usan diferentes compiladores de JavaScript, producen diferentes mensajes. Estas son, sin embargo, soluciones bastante triviales.

V8 (Chrome 36 / Node.js)

SyntaxError: Unexpected identifier

ingrese la descripción de la imagen aquí

SpiderMonkey (Firefox 31)

SyntaxError: missing ; before statement

ingrese la descripción de la imagen aquí

Chakra (Internet Explorer 11)

Expected ';'

ingrese la descripción de la imagen aquí


En jsc:: Exception: SyntaxError: Unexpected identifier 'identifier'D
aplaude el

2
@ConfusedMr_C Ese es un token extraño para ahogarse.
SuperJedi224

@ SuperJedi224 Sí. Al menos funciona: P
aplaude el

28

Commodore 64 Basic

?SYNTAX  ERROR

Cuando se ejecuta en el emulador de su elección (o un Commodore 64 real), produce

?SYNTAX  ERROR

Este es, de hecho, un programa de una línea válido sintácticamente. El signo de interrogación es un acceso directo para PRINT, SYNTAXy ERRORson nombres de variables válidos. El error se produce porque el analizador se confunde con la subcadena ORen ERROR.


55
Si el analizador se confunde y arroja un error de sintaxis, ¿eso no hace que no sea sintácticamente válido?
Martin Ender

44
@ MartinBüttner, eso realmente depende de cuál considere la autoridad para la "sintaxis válida": la descripción del idioma o la implementación del lenguaje.
Mark

16
Ya veo, por lo que técnicamente es sintácticamente válido, pero está activando el analizador debido a un error de una implementación particular.
Martin Ender

66
Más o menos, confundido por el hecho de que no es sólo una aplicación.
Mark

Nitpick: CBM BASIC en realidad imprime dos espacios, no uno, entre "SYNTAX" y "ERROR". Desafortunadamente, no puedo editar esta respuesta para corregirla, ya que Stack Exchange impone un mínimo de 6 caracteres para las ediciones.
Psiconauta

28

Microsoft Excel

Fórmula: #DIV/0!

Mensaje de error: #DIV/0!

Para ingresar una fórmula sin usar un signo igual, vaya a Opciones de Excel / Avanzado / Configuración de compatibilidad de Lotus y habilite la Entrada de fórmula de transición.


-2 bytes:#REF!
Engineer Toast

19

Golpe (32)

Guardar como archivo llamado x:

x: line 1: x:: command not found

Cuando se ejecuta:

>> bash x
x: line 1: x:: command not found

19

Error de compilación de Java 8 quine (12203 bytes)

Generado en windows + mingw con java 1.8.0_11 jdk, usando este comando:

echo a > Q.java; while true; do javac Q.java 2> Q.err; if [ $(diff Q.err Q.java | wc -c) -eq 0 ]; then break; fi; cat Q.err > Q.java; done

Puede que no sea el más corto, puede que tampoco sea el más largo, más una prueba de concepto. Funciona porque la salida de error muestra como máximo 100 errores.

Q.java:1: error: class, interface, or enum expected
Q.java:1: error: class, interface, or enum expected
^
Q.java:1: error: <identifier> expected
Q.java:1: error: class, interface, or enum expected
                      ^
Q.java:1: error: <identifier> expected
Q.java:1: error: class, interface, or enum expected
                                 ^
Q.java:1: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
Q.java:1: error: class, interface, or enum expected
                                      ^
  (use -source 1.4 or lower to use 'enum' as an identifier)
Q.java:1: error: = expected
Q.java:1: error: class, interface, or enum expected
                                           ^
Q.java:2: error: <identifier> expected
Q.java:1: error: class, interface, or enum expected
      ^
Q.java:2: error: ';' expected
Q.java:1: error: class, interface, or enum expected
       ^
Q.java:2: error: illegal start of type
Q.java:1: error: class, interface, or enum expected
        ^
Q.java:2: error: = expected
Q.java:1: error: class, interface, or enum expected
               ^
Q.java:2: error: <identifier> expected
Q.java:1: error: class, interface, or enum expected
                      ^
Q.java:2: error: <identifier> expected
Q.java:1: error: class, interface, or enum expected
                                 ^
Q.java:2: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
Q.java:1: error: class, interface, or enum expected
                                      ^
  (use -source 1.4 or lower to use 'enum' as an identifier)
Q.java:2: error: = expected
Q.java:1: error: class, interface, or enum expected
                                           ^
Q.java:3: error: illegal start of type
^
^
Q.java:4: error: = expected
Q.java:1: error: <identifier> expected
 ^
Q.java:4: error: <identifier> expected
Q.java:1: error: <identifier> expected
      ^
Q.java:4: error: ';' expected
Q.java:1: error: <identifier> expected
       ^
Q.java:4: error: illegal start of type
Q.java:1: error: <identifier> expected
        ^
Q.java:4: error: = expected
Q.java:1: error: <identifier> expected
               ^
Q.java:5: error: '(' expected
Q.java:1: error: class, interface, or enum expected
 ^
Q.java:5: error: <identifier> expected
Q.java:1: error: class, interface, or enum expected
      ^
Q.java:5: error: ';' expected
Q.java:1: error: class, interface, or enum expected
       ^
Q.java:5: error: illegal start of type
Q.java:1: error: class, interface, or enum expected
        ^
Q.java:5: error: = expected
Q.java:1: error: class, interface, or enum expected
               ^
Q.java:5: error: <identifier> expected
Q.java:1: error: class, interface, or enum expected
                      ^
Q.java:5: error: <identifier> expected
Q.java:1: error: class, interface, or enum expected
                                 ^
Q.java:5: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
Q.java:1: error: class, interface, or enum expected
                                      ^
  (use -source 1.4 or lower to use 'enum' as an identifier)
Q.java:5: error: = expected
Q.java:1: error: class, interface, or enum expected
                                           ^
Q.java:6: error: illegal start of type
                      ^
                      ^
Q.java:7: error: = expected
Q.java:1: error: <identifier> expected
 ^
Q.java:7: error: <identifier> expected
Q.java:1: error: <identifier> expected
      ^
Q.java:7: error: ';' expected
Q.java:1: error: <identifier> expected
       ^
Q.java:7: error: illegal start of type
Q.java:1: error: <identifier> expected
        ^
Q.java:7: error: = expected
Q.java:1: error: <identifier> expected
               ^
Q.java:8: error: '(' expected
Q.java:1: error: class, interface, or enum expected
 ^
Q.java:8: error: <identifier> expected
Q.java:1: error: class, interface, or enum expected
      ^
Q.java:8: error: ';' expected
Q.java:1: error: class, interface, or enum expected
       ^
Q.java:8: error: illegal start of type
Q.java:1: error: class, interface, or enum expected
        ^
Q.java:8: error: = expected
Q.java:1: error: class, interface, or enum expected
               ^
Q.java:8: error: <identifier> expected
Q.java:1: error: class, interface, or enum expected
                      ^
Q.java:8: error: <identifier> expected
Q.java:1: error: class, interface, or enum expected
                                 ^
Q.java:8: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
Q.java:1: error: class, interface, or enum expected
                                      ^
  (use -source 1.4 or lower to use 'enum' as an identifier)
Q.java:8: error: = expected
Q.java:1: error: class, interface, or enum expected
                                           ^
Q.java:9: error: illegal start of type
                                 ^
                                 ^
Q.java:10: error: = expected
Q.java:1: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
 ^
Q.java:10: error: <identifier> expected
Q.java:1: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
      ^
Q.java:10: error: ';' expected
Q.java:1: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
       ^
Q.java:10: error: illegal start of type
Q.java:1: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
        ^
Q.java:10: error: = expected
Q.java:1: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
               ^
Q.java:10: error: = expected
Q.java:1: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
                       ^
Q.java:10: error: illegal start of type
Q.java:1: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
                               ^
Q.java:10: error: <identifier> expected
Q.java:1: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
                                ^
Q.java:10: error: unclosed character literal
Q.java:1: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
                                  ^
Q.java:10: error: ';' expected
Q.java:1: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
                                    ^
Q.java:10: error: unclosed character literal
Q.java:1: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
                                       ^
Q.java:10: error: = expected
Q.java:1: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
                                                     ^
Q.java:10: error: = expected
Q.java:1: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
                                                           ^
Q.java:10: error: = expected
Q.java:1: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
                                                                      ^
Q.java:10: error: = expected
Q.java:1: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
                                                                                 ^
Q.java:11: error: <identifier> expected
Q.java:1: error: class, interface, or enum expected
      ^
Q.java:11: error: ';' expected
Q.java:1: error: class, interface, or enum expected
       ^
Q.java:11: error: illegal start of type
Q.java:1: error: class, interface, or enum expected
        ^
Q.java:11: error: = expected
Q.java:1: error: class, interface, or enum expected
               ^
Q.java:11: error: <identifier> expected
Q.java:1: error: class, interface, or enum expected
                      ^
Q.java:11: error: <identifier> expected
Q.java:1: error: class, interface, or enum expected
                                 ^
Q.java:11: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
Q.java:1: error: class, interface, or enum expected
                                      ^
  (use -source 1.4 or lower to use 'enum' as an identifier)
Q.java:11: error: = expected
Q.java:1: error: class, interface, or enum expected
                                           ^
Q.java:12: error: illegal start of type
                                      ^
                                      ^
Q.java:12: error: <identifier> expected
                                      ^
                                       ^
Q.java:13: error: = expected
  (use -source 1.4 or lower to use 'enum' as an identifier)
   ^
Q.java:13: error: ';' expected
  (use -source 1.4 or lower to use 'enum' as an identifier)
      ^
Q.java:13: error: <identifier> expected
  (use -source 1.4 or lower to use 'enum' as an identifier)
              ^
Q.java:13: error: = expected
  (use -source 1.4 or lower to use 'enum' as an identifier)
               ^
Q.java:13: error: ';' expected
  (use -source 1.4 or lower to use 'enum' as an identifier)
                  ^
Q.java:13: error: = expected
  (use -source 1.4 or lower to use 'enum' as an identifier)
                               ^
Q.java:13: error: unclosed character literal
  (use -source 1.4 or lower to use 'enum' as an identifier)
                                   ^
Q.java:13: error: unclosed character literal
  (use -source 1.4 or lower to use 'enum' as an identifier)
                                        ^
Q.java:13: error: = expected
  (use -source 1.4 or lower to use 'enum' as an identifier)
                                                          ^
Q.java:14: error: <identifier> expected
Q.java:1: error: = expected
      ^
Q.java:14: error: ';' expected
Q.java:1: error: = expected
       ^
Q.java:14: error: illegal start of type
Q.java:1: error: = expected
        ^
Q.java:14: error: = expected
Q.java:1: error: = expected
               ^
Q.java:14: error: illegal start of type
Q.java:1: error: = expected
                 ^
Q.java:15: error: = expected
Q.java:1: error: class, interface, or enum expected
^
Q.java:15: error: illegal start of type
Q.java:1: error: class, interface, or enum expected
 ^
Q.java:15: error: = expected
Q.java:1: error: class, interface, or enum expected
      ^
Q.java:15: error: illegal start of type
Q.java:1: error: class, interface, or enum expected
       ^
Q.java:15: error: <identifier> expected
Q.java:1: error: class, interface, or enum expected
        ^
Q.java:15: error: = expected
Q.java:1: error: class, interface, or enum expected
          ^
Q.java:15: error: ';' expected
Q.java:1: error: class, interface, or enum expected
               ^
Q.java:15: error: <identifier> expected
Q.java:1: error: class, interface, or enum expected
                      ^
Q.java:15: error: <identifier> expected
Q.java:1: error: class, interface, or enum expected
                                 ^
Q.java:15: error: as of release 5, 'enum' is a keyword, and may not be used as an identifier
Q.java:1: error: class, interface, or enum expected
                                      ^
  (use -source 1.4 or lower to use 'enum' as an identifier)
Q.java:15: error: = expected
Q.java:1: error: class, interface, or enum expected
                                           ^
Q.java:16: error: illegal start of type
                                           ^
                                           ^
Q.java:17: error: = expected
Q.java:2: error: <identifier> expected
 ^
Q.java:17: error: <identifier> expected
Q.java:2: error: <identifier> expected
      ^
Q.java:17: error: ';' expected
Q.java:2: error: <identifier> expected
       ^
Q.java:17: error: illegal start of type
Q.java:2: error: <identifier> expected
        ^
Q.java:17: error: = expected
Q.java:2: error: <identifier> expected
               ^
100 errors


17

TrumpScript: hacer PPCG genial de nuevo ( TrumpScript )

Al intentar ejecutar este lenguaje en una PC con Windows, la salida es siempre:

Make sure the currently-running OS is not Windows, because we're not PC

Entonces, cuando ejecuta este programa:

Make sure the currently-running OS is not Windows, because we're not PC

Ni siquiera lo analizará porque falla la comprobación del sistema operativo y aparece el mensaje de error. También se pueden dar ejemplos para Mac si alguien los quiere, jaja. Dios, he querido usar esto en PPCG por un tiempo ahora, bueno que finalmente llegue.

Lista completa de errores que pueden desencadenarse utilizando especificaciones ambientales:
https://github.com/samshadwell/TrumpScript/blob/master/src/trumpscript/utils.py


Respuesta adicional: ArnoldC ( ArnoldC )

ArnoldC requiere declaración raíz de IT'S SHOWTIMEsignificado main(), por lo tanto:

WHAT THE FUCK DID I DO WRONG

Resultados en el único mensaje de error en ArnoldC ...

WHAT THE FUCK DID I DO WRONG

Lo cual, en realidad es ... hilarante. Tienes que ejecutarlo de forma no detallada aunque sin rastros de pila.


99
Estas deberían ser dos respuestas separadas.
mbomb007

13

Intérprete de máquina Z

I don't know the word "know".

Prueba contra este popular intérprete . También hay algún tipo de juego mayormente inofensivo alojado allí.


12

Julia 0.2.0

Otro error de sintaxis se encontró iterativamente hasta que se alcanzó un punto fijo:

ERROR: syntax: extra token "token" after end of expression

11

Mathematica

Syntax: "needed." is incomplete; more input is needed.

A .en Mathematica significa un punto decimal o una función Dot. En este caso, .aparece al final de una expresión y no se puede interpretar.


ingrese la descripción de la imagen aquí


No pensé que fuera posible.
ngenisis

9

C

Apliqué el método de copiar repetidamente los mensajes de error a la fuente. Converge en 2 ciclos. Compilado en OSX 10.9 con 'cc -c error.c'.

error.c:1:1: error: unknown type name 'error'
error.c:1:1: error: unknown type name 'error'
^
error.c:1:6: error: expected identifier or '('
error.c:1:1: error: unknown type name 'error'
     ^
2 errors generated.

Nota: Esto no es tanto una respuesta como una metodología para obtener una. El resultado puede cambiar según su sistema operativo o la versión de cc que esté utilizando.

El método exacto para obtener el resultado es ejecutar las instrucciones.

$ cc -c error.c 2>out ; mv out error.c ; cat error.c

repetidamente hasta que la salida deja de cambiar.


Reintenté. Al principio no funcionó. Para que funcione tienes que ejecutar cc -c error.c 2>outy luego mv out error.c. Y con la versión de cc que tengo hoy, toma algunas iteraciones más.
Florian F

Es posible que desee tener en cuenta que en su respuesta, se requiere una versión específica de OSX cc; de lo contrario, no es válido y debe eliminarse según las pautas de la comunidad.
MD XF

@MDXF: Funciona con clang. Aquí hay un enlace a tio.run, 122 bytes: tio.run/##S9ZNzknMS///Xy85PyVVryQzXy/…
G. Sliepen

8

C ++ (g ++)

El archivo debe guardarse como 1.pas.

g++: error: 1.pas: Pascal compiler not installed on this system

44
¿Sigue funcionando si el compilador Pascal está instalado en el sistema?
SuperJedi224

@ SuperJedi224 Al menos, instalar FreePascal no ayuda. Supongo que GNU Pascal podría ser el compilador Pascal correcto, pero no lo intenté.
jimmy23013

8

INTERCALL , 90 bytes

Fatal error: A INTERCALL program must start with the mandatory header to prevent golfing.\n

Incluye una nueva línea al final. Tenga en cuenta que esto no es STDERR, pero muchos lo consideraron un error, por lo que lo publiqué aquí.

Este es el "encabezado obligatorio":

INTERCALL IS A ANTIGOLFING LANGUAGE
SO THIS HEADER IS HERE TO PREVENT GOLFING IN INTERCALL
THE PROGRAM STARTS HERE:

El enlace al repositorio está roto.
connectyourcharger

@connectyourcharger Hm, parece que ya no hay repositorio.
Erik the Outgolfer

Sí, las búsquedas de Google no producen nada excepto los repositorios para Intercal.
connectyourcharger

@connectyourcharger No es necesario; solo hay 8 repos llamados "intercall" (sin distinción entre mayúsculas y minúsculas), y ninguno de ellos trata sobre el lenguaje, por lo que es seguro decir que se ha ido para siempre (no, tampoco hay nada en la máquina Wayback).
Erik the Outgolfer

8

GHCi (un intérprete / shell de Haskell)

Code.hs:1:1: Parse error: naked expression at top level

Uso:

Escriba el código en un archivo llamado Código y cárguelo con GHCi.

Un hecho agradable es que, si las palabras fueran identificadores reales, esta sería una expresión legal (siempre y cuando se verificara). Esto se debe básicamente al hecho de que :es un operador integrado, .se usa para nombres calificados por módulos y se utiliza un espacio en blanco para denotar la aplicación de funciones.


.No es un operador aquí. Es parte de un nombre calificado. ¿Para qué versión de GHCi es esto?
dfeuer

@dfeuer sí, mi mal. Siéntase libre de arreglarlo. La versión de ghci probablemente esté relacionada con lo que estaba disponible en ese momento.
orgulloso Haskeller

7

Ruby 2 en Windows

Código:

error.rb:1: syntax error, unexpected tINTEGER, expecting tSTRING_CONTENT or tSTRING_DBEG or tSTRING_DVAR or tSTRING_END
error.rb:1: syntax error, unexpected tI...
          ^

El código se encontró probando e iterando el proceso una y otra vez hasta llegar a un punto fijo. El código debe estar dentro del archivo "error.rb".

Manifestación:

C:\>type error.rb
error.rb:1: syntax error, unexpected tINTEGER, expecting tSTRING_CONTENT or tSTR
ING_DBEG or tSTRING_DVAR or tSTRING_END
error.rb:1: syntax error, unexpected tI...
          ^

C:\>ruby.exe error.rb
error.rb:1: syntax error, unexpected tINTEGER, expecting tSTRING_CONTENT or tSTR
ING_DBEG or tSTRING_DVAR or tSTRING_END
error.rb:1: syntax error, unexpected tI...
          ^

7

Applescript (en Script Editor)

Syntax Error
A "error" can't go after this identifier.

ingrese la descripción de la imagen aquí


8
es un error?
gato

El artículo "A" aparece antes de las palabras que comienzan con una consonante o un sonido de consonante. Para las palabras que comienzan con una vocal o un sonido vocal, el artículo correcto es "an". Solo estoy siendo quisquilloso :)
gato

1
@cat Ya veo. Sí, nunca reclamé la corrección gramatical :)
Digital Trauma

7

AppleScript

Un identificador no puede ir después de este identificador.

Tanto Ay identifierpueden ser identificadores, por lo AppleScript dice que no.

identificadores


21
debería ser un identificador ... vamos ....
gato

7

C (gcc)

error.c:1:6: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘.’ token
 error.c:1:6: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘.’ token
      ^
compilation terminated due to -Wfatal-errors.

Compilar con gcc -Wfatal-errors error.c.



6

BBC Basic, 7 bytes (o 0 bytes)

Esta es una entrada válida de 7 bytes:

Mistake

Este es el mensaje de error producido por el intérprete cuando es completamente incapaz de darle sentido al código.

Por otro lado, esto no es:

ERROR

Esta es una palabra clave válida en BBC Basic que se supone que introduce deliberadamente un error de un código específico en el programa, pero la sintaxis es incorrecta (no se proporciona ningún código). Por lo tanto, regresa Syntax error(que a su vez regresa Mistakecuando se ejecuta).

En general, el procedimiento descrito por Falko en su respuesta conduce a MistakeBBC basic. Hay algunas excepciones. todo lo que produce los errores DATA not LOCALo ON ERROR not LOCALconduce a la famosa quine de cero bytes: un código fuente vacío produce un archivo vacío.

Dado que la mayoría de los mensajes de error en BBC basic son minúsculas (y, por lo tanto, no son palabras clave válidas), estoy bastante seguro de que cualquier entrada no válida en última instancia conducirá a una de estas posibilidades.


5

CoffeeScript

Falla en el primer error, por lo que es bastante fácil de hacer:

E:\foo.coffee:1:3: error: unexpected \
E:\foo.coffee:1:3: error: unexpected \
  ^

Manifestación

E:\>coffee -c foo.coffee
E:\foo.coffee:1:3: error: unexpected \
E:\foo.coffee:1:3: error: unexpected \
  ^

E:\>

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.