Buat quine kesalahan!

104

Tantangan Anda: tulis "program", untuk bahasa pilihan Anda, yang menyebabkan kompiler / juru bahasa / runtime untuk menghasilkan output kesalahan saat mengkompilasi / menjalankan program Anda yang identik dengan kode sumber program Anda.

Aturan:

  • Program Anda mungkin khusus untuk versi tertentu atau implementasi lingkungan kompiler / juru bahasa / runtime bahasa Anda. Jika demikian, harap jelaskan keterangannya.
  • Hanya opsi kompiler / interpreter / runtime standar yang diizinkan. Anda tidak dapat mengirimkan beberapa flag aneh ke kompiler Anda untuk mendapatkan hasil yang spesifik.
  • Program tidak perlu valid secara sintaksis atau semantik, tetapi saya dapat memberikan hadiah untuk pengajuan yang valid secara sintaksis terbaik.
  • Program tidak boleh menghasilkan output sendiri (misalnya dengan memanggil fungsi cetak atau output). Semua output yang dihasilkan saat mencoba mengkompilasi / menjalankan program harus berasal dari kompiler / interpreter / runtime.
  • Output lengkap dari compiler / interpreter / runtime harus persis sama dengan kode sumber program Anda.
  • Compiler / interpreter / runtime harus menghasilkan setidaknya satu pesan kesalahan ketika dipanggil dengan program Anda.

Ini adalah kontes popularitas . Sebagian besar jawaban kreatif, sebagaimana ditentukan oleh upvotes, menang. Jika Anda dapat memberikan kasus yang baik untuk menggunakan celah standar, Anda dapat melakukannya.

nneonneo
sumber
7
Apa itu " output kesalahan "? Dan apa artinya " menghasilkan pesan kesalahan "? Lebih khusus: 1) Apakah output harus ke stderr? 2) Jika runtime mencatat kesalahan pada syslog dan tidak menulis apa pun ke stderr, apa yang harus dibandingkan dengan sumber program? 3) Jika runtime melempar eksepsi secara internal ketika diberikan program kosong, tetapi membutuhkan flag untuk benar-benar mencetak eksepsi dan akhirnya keluar dengan kode keluar bukan nol tetapi tidak ada output, apakah pesan kesalahan telah dihasilkan?
Peter Taylor
1
Saya mencoba melakukan ini di java dan mendapat osilator p3. Ini adalah fase terpendek: (Kompilasi dari q.java):Error: Could not find or load main class Q
SuperJedi224
2
Ha, karena ambiguitas sintaksis dalam kalimat pertama, saya pikir tantangannya di sini adalah untuk menghasilkan program yang biasanya tidak menghasilkan output, tetapi jika Anda memberikan kode sendiri sebagai input, itu menghasilkan kesalahan.
Steve Bennett
2
Saat melaporkan kesalahan, APL selalu mencetak nama kesalahan yang dapat disesuaikan, opsional pesan kesalahan, nama program yang menyebabkan kesalahan, nomor baris (kurung) di mana kesalahan terjadi, baris kode yang menyebabkan kesalahan, dan garis dengan tanda tanda yang menunjukkan di mana parsing berhenti. Adakah harapan untuk berpartisipasi di sini?
Adám
1
@SteveBennett Mengapa Anda belum membuat tantangan itu?
CalculatorFeline

Jawaban:

117

Ed (1 byte)

Semua solusi lain sejauh ini panjang dan jelek. Saya kira itu karena sifat sebagian besar pesan kesalahan. Tetapi pesan kesalahan yang baik elegan dalam kesederhanaannya. Untuk itu, lihat tidak lebih dari ed.

?

Simpan ini ke file yang dipanggil edscriptdan jalankan dengan ed < edscript, atau jalankan ed<<<?. Hasil:

?

Tanda tanya ditulis ke stderr dan ed menghasilkan 1, jadi ini sebenarnya adalah pesan kesalahan. Saya ingin tahu mengapa ed tidak begitu populer?

Salah (0 byte)

Jalankan dengan false filename. Itu menulis kode sumber program (yaitu tidak ada) ke stderr dan mengembalikan 1. Tentu saja, memanggil false bahasa pemrograman dipertanyakan, dan quine byte nol tidak orisinal, tapi saya pikir saya mungkin juga menambahkannya. Mungkin ada beberapa juru bahasa untuk bahasa yang tidak mencetak pesan kesalahan, dan bisa menggantikan yang salah.

Sekarang saya berharap ini kode golf.

Ian D. Scott
sumber
12
Saya mencari-cari daftar panjang untuk menemukan bahasa seperti ini. Inilah kelemahan dari tantangan ini. Ini bukan tentang menulis program yang pintar, ini tentang memilih bahasa secara cerdik. : /
Ingo Bürk
23
@ IngoBürk Untungnya ini adalah kontes popularitas, bukan golf.
lembut
0-byte False juga merupakan kode yang sama yang pada suatu waktu memenangkan penghargaan "Penyalahgunaan Aturan Terburuk" oleh IOCCC karena membuat kina terpendek secara teoritis. Itu memiliki banyak kesalahan kompiler, dan itu ditulis dalam K&R C, bukan ISO C (yang lebih ketat).
Isiah Meadows
6
@ IngoBürk Banyak masalah dalam kehidupan nyata adalah tentang memilih bahasa secara cerdik juga. : P
Sarge Borsch
2
@Mendeleev * Quine (Sampai agak baru-baru ini, saya selalu salah membaca "quine" sebagai "quinine" karena beberapa alasan ...)
Isiah Meadows
119

Prompt Perintah Windows

& was unexpected at this time.

masukkan deskripsi gambar di sini

Danko Durbić
sumber
Perhatikan bahwa ini |juga berfungsi dengan baik .
MD XF
5
& tidak terduga saat ini. +1
workoverflow
81

CoffeeScript, secara sintaksis valid

Seperti yang diuji di situs web mereka menggunakan Chrome atau Firefox.

ReferenceError: defined is not defined

Anda dapat mengganti defineddengan apa pun yang bukan variabel bawaan, tapi saya pikir versi ini menyenangkan. Sayangnya, undefined is not definedkhususnya tidak berfungsi sebagai quine.

Dalam CoffeeScript ini bahkan bukan kesalahan sintaksis, karena mengkompilasi. Ini secara teknis merupakan kesalahan runtime dalam JavaScript, meskipun membosankan. CoffeeScript adalah kandidat yang potensial untuk menghasilkan beberapa quine error runtime yang lebih menarik karena banyak kalimat lucu adalah kode yang valid. Misalnya contoh di atas mengkompilasi ke

({
  ReferenceError: defined === !defined
});
Martin Ender
sumber
2
definedadalah dengan definedition defined. Apa ... bagaimana ...?
CalculatorFeline
3
Undefined is not defined(dengan modal besar U) tampaknya berhasil lol
Shieru Asakoto
50

Python

laba laba

Nah, solusi yang agak sepele untuk Spyder IDE adalah meningkatkan SyntaxError.

Kode dan output identik:

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 dengan Spyder 2.2.5)


Terminal

Solusi alternatif untuk Python dimulai dari perjuangan baris perintah dengan indentasi yang tidak terduga.

Perintah:

python golf.py

Kode dan output identik:

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

ideone.com

Di ideone.com solusinya adalah sebagai berikut. (Cobalah!)

Kode dan output identik:

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

(Ini untuk Python 2. Contoh untuk Python 3 adalah sepele tetapi dengan 15 baris "kode" agak panjang.)


Pendekatan umum:

Bagaimana cara membuat solusi Anda sendiri dalam 2 menit?

  1. Buka file baru dalam IDE pilihan Anda.
  2. Taburkan kepala Anda ke keyboard di depan Anda.
  3. Menyusun.
  4. Ganti kode dengan pesan kesalahan kompiler.
  5. Ulangi langkah 3 dan 4 hingga kode terkonvergensi.

Saya yakin prosedur seperti ini akan berakhir dengan cepat dalam banyak kasus!

Falko
sumber
6
Seperti yang mungkin Anda tahu, saya menggunakan pendekatan umum itu. Ini tidak berfungsi ketika kode yang disalin semakin meningkatkan jumlah kesalahan kompiler. :-)
rink.attendant.6
9
@ rink.attendant.6: Saat itulah diperlukan pengetahuan ahli kami yang sangat berharga tentang rekayasa perangkat lunak. ;)
Falko
@ rink.attendant.6 Atau ketika Anda dikirim untuk berjalan dalam lingkaran. Cobalah di jendela langsung Excel-VBA.
Dennis Jaheruddin
45
Saya melakukan langkah 1, 2, dan 3, tetapi saya tidak bisa melakukan langkah 4, kode perl itu benar-benar valid!
rodolphito
Hei bagaimana dengan ini dalam IDE python stock, SyntaxError: invalid syntaxmenghasilkan hal yang sama juga :)
Gurupad Mamadapur
42

> <> - 25 Bytes

something smells fishy...

Dalam Fish, instruksi yang salah menghasilkan kesalahan: "sesuatu berbau amis ...". Karena s bukan perintah yang valid, s langsung salah.

Cruncher
sumber
10
Harap perhatikan bahwa nama bahasanya adalah> <>, yang biasanya diucapkan "ikan".
Aaron
1
Dan itu benar-benar "Sesuatu berbau amis ..."
Conor O'Brien
3
@ CᴏɴᴏʀO'Bʀɪᴇɴ Pada interpreter python, memang something smells fishy..., tetapi ada Something smells fishy...pada interpreter online. Tergantung pada penerjemahnya.
Addison Crump
1
@ VTCAKAVSMoACE Ah, terima kasih.
Conor O'Brien
Cuz 'fish' adalah nama program shell / bahasa untuk tahun 90an !
Nick T
41

Windows .EXE, 248 byte

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.

Tidak benar-benar. Simpan sebagai quine.txt, lalu ganti nama menjadi quine.exe(atau unduh di sini ):

MD XF
sumber
38

Ruang putih

Pertama saya pikir ini jelas mustahil. Tapi sebenarnya itu juga sepele. -.-

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

Cobalah.

Ya, program spasi putih pertama saya! ;)

Falko
sumber
1
Bisakah kita bahkan menyebutnya ini program spasi?
V. Courtois
1
Apakah ini bug juru bahasa?
user253751
36

Ayam

Error on line 1: expected 'chicken'
Dennis
sumber
10
Bahasa yang aneh
Albert Renshaw
1
Tautan ke bahasa sudah mati.
pppery
@ppery Diperbaiki. Saya mungkin harus mendapatkan ini di TIO.
Dennis
29

JavaScript

Karena browser yang berbeda menggunakan kompiler JavaScript yang berbeda, mereka menghasilkan pesan yang berbeda. Namun, ini adalah solusi yang agak sepele.

V8 (Chrome 36 / Node.js)

SyntaxError: Unexpected identifier

masukkan deskripsi gambar di sini

SpiderMonkey (Firefox 31)

SyntaxError: missing ; before statement

masukkan deskripsi gambar di sini

Chakra (Internet Explorer 11)

Expected ';'

masukkan deskripsi gambar di sini

rink.attendant.6
sumber
Dalam jsc:: Exception: SyntaxError: Unexpected identifier 'identifier'D
bertepuk
2
@ConfusedMr_C Itu token aneh untuk dicekik.
SuperJedi224
@ SuperJedi224 Ya. Setidaknya itu bekerja: P
bertepuk
28

Commodore 64 Basic

?SYNTAX  ERROR

Saat dijalankan pada emulator pilihan Anda (atau Commodore 64 yang sebenarnya), hasilkan

?SYNTAX  ERROR

Faktanya, ini adalah program satu-baris yang valid secara sintaksis. Tanda tanya adalah pintasan untuk PRINT, dan SYNTAXdan ERRORmerupakan nama variabel yang valid. Kesalahan terjadi karena pengurai menjadi bingung oleh substring ORdi ERROR.

Menandai
sumber
5
Jika parser menjadi bingung dan melempar kesalahan sintaksis, bukankah itu membuatnya tidak valid secara sintaksis?
Martin Ender
4
@ MartinBüttner, itu benar-benar tergantung pada yang Anda anggap otoritas untuk "sintaks yang valid": deskripsi bahasa, atau implementasi bahasa.
Markus
16
Saya mengerti, jadi secara teknis valid secara sintaksis tetapi itu membuat parser tersandung karena bug dari implementasi tertentu?
Martin Ender
6
Lebih atau kurang, dikacaukan oleh fakta bahwa ada adalah hanya satu implementasi.
Markus
Nitpick: CBM BASIC sebenarnya mencetak dua spasi, bukan satu, antara "SYNTAX" dan "ERROR". Sayangnya saya tidak dapat mengedit jawaban ini untuk memperbaikinya, karena Stack Exchange memaksakan minimum 6 karakter konyol untuk pengeditan.
Psychonaut
28

Microsoft Excel

Rumus: #DIV/0!

Pesan eror: #DIV/0!

Untuk memasukkan formula tanpa menggunakan tanda sama dengan, buka Pengaturan Opsi Excel / Lanjutan / Kompatibilitas Lotus dan aktifkan Entri Transisi Formula.

James
sumber
-2 bytes:#REF!
Engineer Toast
19

Bash (32)

Simpan sebagai file bernama x:

x: line 1: x:: command not found

Ketika dijalankan:

>> bash x
x: line 1: x:: command not found
Ingo Bürk
sumber
19

Quine error kompilasi Java 8 (12203 bytes)

Dihasilkan pada windows + mingw dengan java 1.8.0_11 jdk, menggunakan perintah ini:

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

Mungkin bukan yang terpendek, mungkin juga bukan yang terpanjang, lebih merupakan bukti konsep. Berfungsi karena output kesalahan menunjukkan paling banyak 100 kesalahan.

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
Volune
sumber
17

ArnoldC

missing IT'S SHOWTIME on first line

Rekatkan kode ke kompiler ini .

Mama Fun Roll
sumber
32
Yang lucu IT'S SHOWTIMEsebenarnya ada di baris pertama
Cyoce
2
Harus membuat PR untuk memperbaikinya: P
Nick T
17

TrumpScript - Membuat PPCG Hebat Lagi ( TrumpScript )

Saat mencoba menjalankan bahasa ini di PC windows, hasilnya selalu:

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

Jadi ketika menjalankan program ini:

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

Bahkan tidak akan menguraikannya karena pemeriksaan OS gagal, dan Anda mendapatkan pesan kesalahan. Contoh dapat diberikan untuk Mac juga jika ada yang mau haha. Ya Tuhan, aku sudah lama ingin menggunakan ini di PPCG, bagus akhirnya aku bisa.

Daftar lengkap kesalahan yang dapat dipicu menggunakan spesifik lingkungan:
https://github.com/samshadwell/TrumpScript/blob/master/src/trumpscript/utils.py


Jawaban Bonus: ArnoldC ( ArnoldC )

ArnoldC membutuhkan deklarasi root IT'S SHOWTIME, yang berarti main(), jadi:

WHAT THE FUCK DID I DO WRONG

Menghasilkan satu-satunya pesan kesalahan di ArnoldC ...

WHAT THE FUCK DID I DO WRONG

Yang mana, sebenarnya ... lucu. Anda harus menjalankannya non-verbose meskipun tanpa jejak stack.

Guci Gurita Ajaib
sumber
9
Ini harus menjadi dua jawaban terpisah.
mbomb007
13

Juru bahasa mesin-Z

I don't know the word "know".

Uji terhadap penerjemah populer ini . Juga ada semacam game yang kebanyakan tidak berbahaya di-host di sana.

Menandai
sumber
12

Julia 0.2.0

Kesalahan sintaksis lain ditemukan secara iteratif hingga titik tetap tercapai:

ERROR: syntax: extra token "token" after end of expression
Martin Ender
sumber
11

Mathematica

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

A .dalam Mathematica berarti titik atau fungsi desimal Dot. Dalam hal ini, .muncul di akhir ekspresi dan tidak dapat ditafsirkan.


masukkan deskripsi gambar di sini

njpipeorgan
sumber
Saya pikir itu tidak mungkin.
ngenisis
9

C

Saya menerapkan metode berulang kali menyalin pesan kesalahan ke sumber. Itu berkumpul dalam 2 siklus. Dikompilasi di OSX 10.9 dengan '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.

Catatan: Ini bukan jawaban karena ini adalah metodologi untuk mendapatkannya. Hasilnya mungkin berubah tergantung pada OS Anda atau versi cc yang Anda gunakan.

Metode yang tepat untuk mendapatkan hasilnya adalah dengan menjalankan instruksi

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

berulang kali hingga output berhenti berubah.

Florian F
sumber
Saya mencoba lagi. Awalnya tidak berhasil. Untuk membuatnya bekerja, Anda harus menjalankan cc -c error.c 2>outdan kemudian mv out error.c. Dan dengan versi cc yang saya miliki hari ini dibutuhkan beberapa iterasi lagi.
Florian F
Anda mungkin ingin mencatat bahwa dalam jawaban Anda, itu membutuhkan versi OSX tertentu cc; jika tidak maka tidak valid dan harus dihapus per pedoman komunitas.
MD XF
@ MDXF: Ini bekerja dengan dentang. Berikut ini tautan ke tio.run, 122 byte: tio.run/##S9ZNzknMS///Xy85PyVVryQzXy/…
G. Sliepen
8

C ++ (g ++)

File harus disimpan sebagai 1.pas.

g++: error: 1.pas: Pascal compiler not installed on this system
jimmy23013
sumber
4
Apakah masih bekerja jika compiler Pascal adalah diinstal dalam sistem?
SuperJedi224
@ SuperJedi224 Setidaknya menginstal FreePascal tidak membantu. Saya kira GNU Pascal mungkin kompilator Pascal yang tepat, tetapi saya tidak mencoba.
jimmy23013
8

INTERCALL , 90 byte

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

Termasuk baris baru di akhir. Perhatikan bahwa ini bukan STDERR, tetapi dianggap sebagai output kesalahan oleh banyak orang, jadi saya mempostingnya di sini.

Ini adalah "header wajib":

INTERCALL IS A ANTIGOLFING LANGUAGE
SO THIS HEADER IS HERE TO PREVENT GOLFING IN INTERCALL
THE PROGRAM STARTS HERE:
Erik the Outgolfer
sumber
Tautan ke repo rusak.
connectyourcharger
@connectyourcharger Hm, sepertinya tidak ada repo lagi.
Erik the Outgolfer
Ya, pencarian Google tidak menghasilkan apa-apa kecuali repo untuk Intercal.
hubungkan charger Anda
@connectyourcharger Anda Tidak perlu; hanya ada 8 repo yang disebut "intercall" (tidak peka huruf besar-kecil), dan tidak ada satu pun dari mereka yang berbicara tentang bahasa, jadi aman untuk mengatakan itu tidak berguna (tidak, tidak ada apa pun di Wayback Machine juga).
Erik the Outgolfer
8

GHCi (juru bahasa / shell Haskell)

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

Pemakaian:

Tulis kode dalam file bernama Kode dan muat dengan GHCi.

Fakta yang bagus adalah bahwa, jika kata-kata itu adalah pengidentifikasi yang sebenarnya, ini akan menjadi ekspresi hukum (selama itu akan ketik cek). Hal ini pada dasarnya disebabkan oleh fakta bahwa :operator yang ada di dalamnya, .digunakan untuk nama yang memenuhi syarat modul, dan spasi putih digunakan untuk menunjukkan aplikasi fungsi.

haskeller bangga
sumber
.bukan operator di sini. Itu bagian dari nama yang memenuhi syarat. Untuk GHCi versi apa ini?
dfeuer
@ PDFeu ya, salahku. Jangan ragu untuk memperbaikinya. Versi ghci mungkin sekitar apa pun yang keluar pada saat itu.
haskeller bangga
7

Ruby 2 di Windows

Kode:

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...
          ^

Kode ditemukan dengan menguji dan mengulangi proses berulang-ulang sampai titik perbaikan tercapai. Kode harus ada di dalam file "error.rb".

Demo:

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...
          ^
Howard
sumber
7

Applescript (dalam Editor Skrip)

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

masukkan deskripsi gambar di sini

Trauma Digital
sumber
8
ini sebuah kesalahan?
kucing
Artikel "A" muncul di depan kata-kata yang dimulai dengan konsonan atau bunyi konsonan. Untuk kata-kata yang dimulai dengan vokal atau bunyi vokal, artikel yang benar adalah "an". Saya hanya menjadi nitpicky :)
cat
1
@cat saya mengerti. Yap, saya tidak pernah mengklaim kebenaran tata bahasa :)
Digital Trauma
7

AppleScript

Identifier tidak dapat mengikuti identifier ini.

Keduanya Adan identifierbisa menjadi pengidentifikasi, sehingga AppleScript mengatakan tidak.

pengidentifikasi

Addison Crump
sumber
21
itu harus merupakan identifier ... ayolah ....
kucing
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.

Kompilasi dengan gcc -Wfatal-errors error.c.

BenjiWiebe
sumber
6

BBC Basic, 7 byte (atau 0 Bytes)

Ini adalah entri 7 byte yang valid:

Mistake

Ini adalah pesan kesalahan yang dihasilkan oleh penerjemah ketika benar-benar tidak dapat memahami kode.

Di sisi lain, ini bukan:

ERROR

Ini adalah kata kunci yang valid di BBC Basic yang seharusnya sengaja memperkenalkan kesalahan dari kode yang ditentukan ke dalam program, tetapi sintaksnya salah (tidak ada kode yang diberikan.) Oleh karena itu ia mengembalikan Syntax error(yang pada gilirannya kembali Mistakeketika dijalankan.)

Secara umum prosedur yang dijelaskan oleh Falko dalam jawabannya mengarah ke Mistakedasar BBC. Ada beberapa pengecualian. apa pun yang menghasilkan kesalahanDATA not LOCAL atauON ERROR not LOCAL mengarah ke quine nol byte yang terkenal: kode sumber kosong menghasilkan file kosong.

Mengingat bahwa sebagian besar pesan kesalahan di BBC basic adalah huruf kecil (dan karena itu bukan kata kunci yang valid), saya cukup yakin bahwa setiap input yang tidak valid pada akhirnya akan mengarah ke salah satu kemungkinan ini.

Level River St
sumber
5

CoffeeScript

Gagal pada kesalahan pertama, sehingga cukup mudah dilakukan:

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

Demo

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

E:\>
rink.attendant.6
sumber
5

Keempat

Coba di sini

Secara mengejutkan ini mudah ditemukan.

a : error(-13): word not found
mbomb007
sumber