Tugas
Buat program atau fungsi yang valid dalam berbagai bahasa pemrograman, dan ketika dikompilasi / ditafsirkan sebagai bahasa yang berbeda, output "Halo, Dunia!" dalam bahasa alami yang berbeda.
Misalnya, solusi yang valid mungkin menampilkan Hello World!
(bahasa Inggris) saat dikompilasi dan dijalankan sebagai C, Hallo Welt!
(Jerman) saat dikompilasi dan dijalankan sebagai C ++ dan 你好世界!
(Cina) saat dijalankan sebagai Python.
Aturan
Untuk menghindari ambiguitas tentang validitas jawaban, di bawah ini adalah daftar versi frasa yang diperbolehkan dalam beberapa bahasa. Daftar ini terdiri dari frasa dalam bahasa yang Google Translate memiliki terjemahan frasa yang diverifikasi komunitas (saat tulisan ini dibuat). *
Keakuratan terjemahan ini masih bisa diperdebatkan, tetapi itulah yang akan digunakan oleh tantangan ini. String yang dicetak harus mengikuti persis format di bawah ini (dengan pengecualian spasi spasi awal atau akhir).
Afrikaans: Hello Wêreld!
Albanian: Përshendetje Botë!
Amharic: ሰላም ልዑል!
Arabic: مرحبا بالعالم!
Armenian: Բարեւ աշխարհ!
Basque: Kaixo Mundua!
Belarussian: Прывітанне Сусвет!
Bengali: ওহে বিশ্ব!
Bulgarian: Здравей свят!
Catalan: Hola món!
Chichewa: Moni Dziko Lapansi!
Chinese: 你好世界!
Croatian: Pozdrav svijete!
Czech: Ahoj světe!
Danish: Hej Verden!
Dutch: Hallo Wereld!
English: Hello World!
Estonian: Tere maailm!
Finnish: Hei maailma!
French: Bonjour monde!
Frisian: Hallo wrâld!
Georgian: გამარჯობა მსოფლიო!
German: Hallo Welt!
Greek: Γειά σου Κόσμε!
Hausa: Sannu Duniya!
Hebrew: שלום עולם!
Hindi: नमस्ते दुनिया!
Hungarian: Helló Világ!
Icelandic: Halló heimur!
Igbo: Ndewo Ụwa!
Indonesian: Halo Dunia!
Italian: Ciao mondo!
Japanese: こんにちは世界!
Kazakh: Сәлем Әлем!
Khmer: សួស្តីពិភពលោក!
Kyrgyz: Салам дүйнө!
Lao: ສະບາຍດີຊາວໂລກ!
Latvian: Sveika pasaule!
Lithuanian: Labas pasauli!
Luxemburgish: Moien Welt!
Macedonian: Здраво свету!
Malay: Hai dunia!
Malayalam: ഹലോ വേൾഡ്!
Mongolian: Сайн уу дэлхий!
Myanmar: မင်္ဂလာပါကမ္ဘာလောက!
Nepali: नमस्कार संसार!
Norwegian: Hei Verden!
Pashto: سلام نړی!
Persian: سلام دنیا!
Polish: Witaj świecie!
Portuguese: Olá Mundo!
Punjabi: ਸਤਿ ਸ੍ਰੀ ਅਕਾਲ ਦੁਨਿਆ!
Romanian: Salut Lume!
Russian: Привет мир!
Scots Gaelic: Hàlo a Shaoghail!
Serbian: Здраво Свете!
Sesotho: Lefatše Lumela!
Sinhala: හෙලෝ වර්ල්ඩ්!
Slovenian: Pozdravljen svet!
Spanish: ¡Hola Mundo! // Leading '¡' optional
Sundanese: Halo Dunya!
Swahili: Salamu Dunia!
Swedish: Hej världen!
Tajik: Салом Ҷаҳон!
Thai: สวัสดีชาวโลก!
Turkish: Selam Dünya!
Ukrainian: Привіт Світ!
Uzbek: Salom Dunyo!
Vietnamese: Chào thế giới!
Welsh: Helo Byd!
Xhosa: Molo Lizwe!
Yiddish: העלא וועלט!
Yoruba: Mo ki O Ile Aiye!
Zulu: Sawubona Mhlaba!
Jadi ada 74 bahasa yang bisa digunakan.
Kriteria Kemenangan
Solusi yang dapat menghasilkan frase dalam jumlah bahasa terbanyak akan menang. Dalam kasus seri, solusi yang lebih pendek (dalam byte) menang.
* Terjemahan untuk Malagasi dan Malta ditandai dengan diverifikasi komunitas, tetapi jelas tidak benar (satu hanya "Hello World!" Dan yang lainnya "Hello dinja!", Tetapi "Hello!" Saja diterjemahkan menjadi "Bongu!"). Ini dikecualikan. Juga beberapa bahasa (Arab, Ibrani, Pashto, Persia, dan Yiddish) membaca dari kanan ke kiri di Google Translate, tetapi ketika disalin di sini mereka membaca dari kiri ke kanan. Saya harap tidak apa-apa.
sumber
!
, U + FF01) berbeda dari yang lain (!
, U + 0021).Jawaban:
23 Befunges, 713 byte
Satu-satunya bahasa yang saya benar-benar tahu adalah Befunge, jadi alih-alih beberapa bahasa, saya hanya menggunakan beberapa implementasi Befunge. Saya percaya ini masih berlaku di bawah aturan PPCG, yang menganggap bahasa akan ditentukan oleh implementasinya .
Hal yang membuat frustrasi tentang Befunge, adalah bahwa meskipun ada implementasi referensi open source, dan bahasanya sendiri sangat sederhana, tidak ada satu pun penerjemah pihak ketiga (yang saya tahu) yang persis sesuai dengan perilaku referensi. Setiap implementasi gagal dengan cara yang berbeda.
Di sisi positifnya, ini memberi kita kesempatan untuk mengembangkan satu kode yang akan menghasilkan hasil yang berbeda di hampir setiap penerjemah. Dan itulah yang saya coba dalam program di atas.
Jika ada yang tertarik untuk memverifikasi hasil, saya telah mencoba untuk mengelompokkan berbagai implementasi ke dalam kategori berdasarkan seberapa mudah mereka untuk bangun dan berjalan (misalnya beberapa orang mungkin tidak dapat menjalankan binari Windows, atau mungkin tidak mau membangun dari sumber, tetapi semua orang harus dapat menguji penerjemah online).
Penerjemah Online
Tidak diperlukan instalasi. Biasanya hanya masalah menempelkan kode dan mengklik satu atau dua tombol. Tetapi perhatikan bahwa beberapa di antaranya sangat lambat, jadi mungkin perlu waktu untuk menyelesaikan eksekusi.
Arena Bermain Befunge Alexios - Salamu Dunia!Klik Clear...tombol dan tempel kode ke dalam kolom input. Alihkan Editsakelar untuk mengaktifkan juru bahasa, lalu klik Runtombol untuk mulai menjalankan.
Befungius - Molo Lizwe!Perhatikan bahwa situs ini mungkin tidak akan berfungsi di Browser selain Chrome.
Rekatkan kode ke bidang input, pastikan untuk menimpa kode yang ada. Kemudian klik Runtombol untuk menjalankan.
Befunge 93 Interpreter David Klick - Sannu Duniya!Rekatkan kode ke bidang input Playfield , lalu klik Runtombol untuk mulai menjalankan.
Befunge-93 Interpreter Ian Osgood - Salut Lume!Rekatkan kode ke bidang input di bawah Showtombol, pastikan untuk menimpa
jsFunge IDE - Hej Verden!@
yang sudah ada. Klik Showtombol untuk mengimpor kode, lalu klik Runtombol untuk mulai menjalankan.Pertama tutup dialog Bantuan , lalu klik tombol Buka / Impor bilah alat (kedua dari kiri), rekatkan kode, dan klik OK. Untuk menjalankan, klik tombol Jalankan Mode (keempat dari kiri), dan kemudian Mulai (kelima dari kiri).
Juga perhatikan bahwa beberapa penerjemah berbasis konsol sebenarnya tersedia di TIO, jadi meskipun mereka bukan penerjemah online teknis, mereka dapat diuji secara online. Bagi mereka yang didukung (saat ini BEF, FBBI, MTFI dan PyFunge), saya telah menyertakan Try It Online! tautan di sebelah entri mereka.
IDE Java
Anda perlu menginstal run-time Java untuk ini, tetapi mereka secara teoritis harus bekerja pada platform apa pun. Hanya diuji pada Windows sekalipun.
Applet Befunge Visual Ashley Mills - Moien Welt!Awalnya ini adalah applet online yang sayangnya tidak lagi tersedia, tetapi Anda masih dapat mengunduh toples dan menjalankannya secara lokal sebagai aplikasi desktop. Anda harus menempelkan kode ke jendela Program Editor , lalu klik Converttombolnya, diikuti Runtombolnya.
WASABI: Penerjemah Befunge Bein Asinine yang Luar Biasa dari Wasabi - Hallo Welt!Untuk menempelkan kode, klik kanan di sudut kiri atas jendela editor (itu harus paling kiri atas) dan pilih item menu Tempel . Kemudian aktifkan kotak centang Kecepatan Penuh (jika tidak akan selamanya), dan klik Run!tombol untuk mulai menjalankan.
YABI93: Penerjemah Befunge93 Lagi - Halo Dunia!Tekan Ctrl+ A, Ctrl+ Vuntuk menempelkan kode ke jendela editor, pastikan untuk menimpa sumber default. Kemudian klik Starttombol untuk mulai menjalankan.
IDE Windows
Anda biasanya memerlukan Windows untuk ini, walaupun dalam beberapa kasus mungkin ada binari yang tersedia untuk sistem operasi lain. Saya tidak bisa menjanjikan kode akan bekerja pada platform lain.
BefunExec - Hello World!Anda tidak dapat menempelkan kode ke editor, jadi pertama-tama Anda harus menyimpannya di disk di suatu tempat. Kemudian dari IDE, gunakan menu File> Open untuk memuat kode dari disk, dan pilih menu Simulasi> Run / Pause untuk menjalankannya.
BeQunge - Labas pasauli!Tekan Ctrl+ Vuntuk menempelkan kode, lalu klik tombol Bilah alat Debug (roda gigi biru) untuk mulai menjalankan. Setelah panel Debugger muncul, Anda ingin mengatur Kecepatan ke maksimum - tombol di sebelah kanan bilah geser - jika tidak, akan butuh selamanya untuk menyelesaikannya.
Jamur - Tere maailm!Tekan Ctrl+ Vuntuk menempelkan kode, lalu tekan F5untuk menjalankannya.
Visbef: Visual Befunge '93 untuk Windows - Hallo Wereld!Anda tidak dapat menempelkan kode ke editor, jadi pertama-tama Anda harus menyimpannya di disk di suatu tempat. Kemudian dari IDE, tekan Ctrl+ Ountuk membuka browser file dan memuat kode dari disk, dan tekan F5untuk menjalankannya.
Aplikasi Konsol Windows
Sekali lagi ini biasanya memerlukan Windows, meskipun platform lain mungkin tersedia, tetapi tidak dijamin berfungsi.
Dalam semua kasus, kode harus disimpan ke file pada disk dan nama file diteruskan ke penerjemah sebagai parameter baris perintah ( source.bf dalam contoh baris perintah yang diberikan di bawah). Juga perhatikan bahwa beberapa di antaranya secara teknis Befunge-98 interpreter, dan harus dijalankan dengan opsi baris perintah tertentu untuk memaksa mode kompatibilitas Befunge-93. Jika Anda tidak melakukan itu, Anda tidak akan mendapatkan hasil yang benar.
BEFI: Penerjemah Befunge-93 Rugxulo - Hei Verden!Garis komando:
CCBI: Menyesuaikan Interpreter Befunge-98 Serentak - Sveika pasaule!bef93w32 -q source.bf
Baris perintah:
MTFI: Magus Technica Funge Interpreter - Hai dunia!ccbi --befunge93 source.bf
Baris perintah:
mtfi -3 source.bf
( Coba online! )Aplikasi Konsol Python dan PHP
Ini membutuhkan bahasa scripting yang sesuai diinstal - baik Python atau PHP.
Befungee - Helo Byd!Garis komando:
PyFunge - Halo Dunya!befungee.py source.bf
Baris perintah:
Bephunge - Bonjour monde!pyfunge -v 93 source.bf
( Coba online! )Garis komando:
php bephunge.phps source.bf
Aplikasi Konsol Sumber Saja
Ini perlu dibangun dari sumber, dan itu biasanya paling mudah dengan lingkungan * nix-like. Pada Windows saya menggunakan Subsistem Windows untuk Linux .
BEF: Distribusi Referensi Befunge-93 - Ciao mondo!Baris perintah:
cfunge - Sawubona Mhlaba!bef -q source.bf
( Coba online! )Garis komando:
FBBI: Intepreter Flaming Bovine Befunge-98 - Hei maailma!cfunge -s 93 source.bf
Baris perintah:
Jamur - Kaixo Mundua!fbbi -93 source.bf
( Coba online! )Garis komando:
Rc / Funge-98 - Salom Dunyo!fungi source.bf
Garis komando:
rcfunge -93 source.bf
Bagaimana itu bekerja
Tantangan dengan ini adalah menemukan jumlah tes paling sedikit yang memberikan perbedaan paling banyak antara penafsir. Pada akhirnya turun menjadi empat urutan tes utama:
Yang pertama adalah memori out-of-bounds yang dibaca dari offset -1,1. Secara teori ini harus selalu mengembalikan 32 (ruang ASCII), tetapi sebenarnya ada 10 variasi dalam praktik. Tes ini diperumit oleh fakta bahwa dua penerjemah jatuh pada bacaan out-of-bounds, sehingga beberapa tes kasus khusus (pembulatan pembagian dan ruang menjembatani) diperlukan untuk memaksa mereka berdua kembali ke dalam batas.
Urutan kedua adalah tes fungsi Befunge-98 - secara khusus instruksi
;
dan'
. Hampir semua penterjemah adalah Befunge-93, atau dijalankan dalam mode kompatibilitas Befunge-93, jadi mereka harus mengabaikan instruksi tersebut. Dalam praktiknya ada 6 cara berbeda di mana urutan ini ditafsirkan.Tes ketiga memeriksa rentang sel memori. Dalam juru bahasa referensi, sel-sel memori ditandatangani 8-bit, tetapi implementasi lain bervariasi dalam kisaran dari 8-bit untuk tidak terikat, beberapa ditandatangani dan beberapa tidak ditandatangani. Namun, untuk keperluan tes ini, kami hanya harus membedakan antara 5 varian tersebut.
Urutan keempat dan terakhir adalah kombinasi dari tes pembagian bawah dan negatif. Ada beberapa cara yang menyebabkan interpreter mendapatkan kesalahan, dan setidaknya ada 3 cara berbeda di mana instruksi pembagian dan modulo diterapkan, tetapi hanya ada 3 kombinasi yang kami perhatikan di sini.
Setiap urutan ini menghasilkan satu angka, dan keempat angka tersebut digabungkan (melalui beberapa tabel aritmatika dan terjemahan dasar) untuk menghasilkan nilai akhir dalam kisaran 0 hingga 22. Nilai itu kemudian dapat digunakan sebagai indeks untuk mencari pesan aktual menampilkan.
sumber
3y
).16 bahasa, 1363 byte
Cobalah online!
(gunakan "ganti bahasa" untuk mengubah bahasa)
Python 3 = Halo Dunia! (Bahasa Indonesia)
Python 2 = Hej Verden! (Orang Denmark)
Python 1 = Hai dunia! (Melayu)
C (gcc) = Helo Byd! (Welsh)
C ++ (gcc) = Halo Dunya! (Sunda)
Objective C (clang) = Hallo Welt! (Jerman)
Brainfuck = Halo Dunia! (Bahasa Inggris, tentu saja)
Befunge-93 = Salut Lume! (Rumania)
Ruby = Moien Welt! (Luxemburgish)
Bash = Salom Dunyo! (Uzbek)
Befunge-98 (PyFunge) = Kaixo Mundua! (Basque)
Unefunge-98 (PyFunge) = Sannu Duniya! (Hausa)
Kardinal = Hallo Wereld! (Belanda)
Alphuck = Ciao mondo! (Italia)
> <> = Moni Dziko Lapansi! (Chichewa)
Fission = Pozdrav svijete! (Kroasia)
Setiap tips bermain golf disambut (terutama di Brainfuck) !!
Terima kasih kepada @JonathanFrech untuk -1 byte! Juga, terima kasih kepada @ovs untuk -40 byte!
Bagaimana (ide umum, saya benar-benar lupa spesifik) ??
Bahasa dapat dimasukkan ke dalam empat grup:
Bahasa Makro dilihat
#
sebagai awal dari arahan preprosesor. Ini digunakan karena tiga alasan: kode rumah untuk grup lain, untuk membedakan antara bahasa makro, dan untuk benar-benar mendefinisikan makro. Ketiganya digunakan//
sebagai komentar, jadi setelah itu kami menyimpan kode untuk grup lain. Juga, garis miring terbalik melanjutkan komentar dalam bahasa-bahasa ini.Bahasa Komentar dilihat
#
sebagai awal dari sebuah komentar. The quirk di sini adalah tanda kutip tiga, yang membedakan Python dari Ruby dari Bash. Dan untuk membedakan Python 1 dari 2 dari 3, kami menggunakan fitur pembeda di ketiganya, bersama dengan berbagai output. Oh ya, ada juga itu__END__
. Ini digunakan untuk mengakhiri kode untuk beberapa (tidak ingat persis yang mana) dari bahasa Komentar.Bahasa Dimensi dibedakan dengan cara yang sulit untuk dijelaskan. Kita harus mengetahui secara spesifik setiap bahasa untuk mengetahuinya. Misalnya,
#
hanya lompatan di fungeoids, sementara ia melakukan berbagai hal dalam bahasa lain. Kode ini berserakan di mana-mana untuk bahasa-bahasa ini.Dan akhirnya, kami tiba di bahasa Vulgar. Keduanya mengabaikan semua yang tidak ada dalam set karakter yang valid. Tindakan menyeimbangkan harus dimainkan dengan bahasa-bahasa ini dan yang lain, karena kode sudah berisi karakter dalam set karakter.
sumber
"abcabcabc"[n::3] -> "aaa" for n = 0, "bbb" for n = 1
. Saya merasa seperti mungkin ada cara Anda bisa mengiris dan menyimpan byte dengan memasukkan karakter yang digandakan dalam mengiris entah bagaimana (seperti H dan!).["Hai dunia!","Hej Verden!","Halo Dunia!"]
koma koma!+[++[<+++>->+++<]>+++++++]<<<--.<.<--..<<---.<+++.<+.>>.>+.>.>-.<<<<+.
untuk bagian BF Anda? ( sumber )15 bahasa, 532 byte
Cobalah online!
Kaixo Mundua!
di Befunge-93Hej Verden!
dalam fisiTere maailm!
di Unefunge-98Hei maailma!!
di Befunge-98Hai dunia!
di> <>Hola món!
di RubyHola Mundo!
dalam GolfScriptHallo Welt!
di bashNdewo Ụwa!
dalam kshCiao mondo!
terburu-buruMoien Welt!
dalam zshHei Verden!
dalam abuOlá Mundo!
dalam KardinalHello World!
di brainfuck, milik primo .Helo Byd!
di WhitespacePenjelasan
Baris 1 membedakan antara lima esolang 2D:
><>
dibaca#
sebagai cermin, membungkus ke kiri, cetak"Hai dunia!"
dan crash (@
). Semua Jamur membacanya sebagai trampolin dan ke kanan.;
, mencetak,Kaixo Mundua!
dan keluar (@
).;
ke yang kedua, lalu dari yang ketiga;
ke yang keempat.w
adalah NOP untuk Befunge-98, percetakanHei maailma!
.w
mencerminkan penunjuk instruksi di Unefunge-98, mencetakTere maailm!
.R"Hej Verden!";
dieksekusi. (Petunjuk instruksi lain dimulai dariD
dalam__END__
, tetapi tidak melakukan apa-apa kemudian mati ke;
dalamtrue;
.)Ruby melihat
`true #{puts'Hola món!'}`
, kemudian__END__
.GolfScript melihat
`
, lalutrue
(NOP), lalu komentar; lalu__END__
(NOP); lalu"Hola Mundo!" puts
(ini dieksekusi); thencase
(NOP), then`
(crash pada stack kosong).Kerang melihat komentar, lalu doa ke
true
(NOP), lalu doa ke perintah yang tidak diketahui__END__
dan"Hola Mundo!"
(yang kesalahan untuk STDERR tetapi eksekusi berlanjut), kemudiancase
pernyataan yang membedakan berdasarkan huruf pertama dari nama proses saat ini.Kardinal adalah esolang 2D lain yang dimulai dari
%
, mengirimkan 4 IP ke atas, bawah, kiri, dan kanan. Mereka semua terbunuh olehx
perintah di sekitarnya , tetapi satu cetak"Olá Mundo!"
sebelum mati.Kode brainfuck adalah primo, diawali dengan
++
untuk menangkal tanda hubungps -p$$ -oargs=
.Ruang kosong dalam kode saya dieksekusi sebagai program Ruang Putih
yang mencetak
Helo Byd!
EDIT : Saya lupa bahwa menambahkan
UDLR
karakter merusak program Fission, jadi saya telah mengubah string untuk menghindari ini.sumber
#define
bukan hal di D ... yang menghalangi banyak polyglotting). Juga, saya benar-benar perlu belajar spasi.4 bahasa, 75 byte
Python -
Hai dunia!
Perl -
Helo Byd!
Ruby -
Hola món!
Tumpukan jerami -
Hej Verden!
sumber
7 bahasa, 221 byte
Karena program ini mengandung beberapa karakter jahat, berikut ini adalah xxd:
Përshendetje Botë!
- Cobalah online!Hallo Wereld!
- Cobalah online!ሰላም ልዑል!
- Cobalah online!Hello Wêreld!
- Cobalah online!Kaixo Mundua!
- Cobalah online!مرحبا بالعالم!
- Cobalah secara online!Բարեւ աշխարհ!
- Cobalah online!sumber
<?='مرحبا بالعالم!';die?>
? Ini PHP yang valid (dasarnya sama dengan<?php echo ... ?>
),5 bahasa, 168 byte
Saya pikir bahasa 2 dimensi menarik.
> <> cetakan
Tere maailm!
Befunge-98 cetakan Cetakan
Hej Verden!
lilin lebah
Sawubona Mhlaba!
Kardinal mencetak cetakan
Helo Byd!
Fisi
Hello World!
Cobalah online! (Kardinal)
sumber
//
ada komentar dalam banyak bahasa.*/\_
dihasilkan oleh karakter dan dapat diarahkan ke arah tertentu atau dengan cermin atau rotasi. Lihat di sini untuk lebih lanjut.;
setelah backtick kedua tidak diperlukan. Lebah lari dari sarang madu ke kanan.2 bahasa, 16 karakter, 24 byte
Yah, setidaknya itu lebih pendek dari kedua string.
05AB1E -
שלום עולם!
Tolong, WarDoq! -
Hello World!
Tolong, WarDoq! dapat menambahkan dua angka dan menguji bilangan prima, sehingga dianggap sebagai bahasa pemrograman yang valid per posting meta ini .
sumber
3 bahasa,
6762 byteUntuk memenuhi syarat untuk hadiah ini (100 rep).
Tambah ++: Cobalah online!
Foo: Coba online!
Somme: Coba online!
Penjelasan
Tambahkan ++
Tambahkan ++ lihat:
"
x
String keluaran ""Setel y ke string lain"
"idk sesuatu yang aneh, aku akan salah"
Foo
Foo melihat:
"Oo, kutipan, aku akan menampilkannya."
"Uh ... sesuatu tentang mode? Idk, aku akan salah."
Somme
Somme melihat, yah, ini:
Setiap kolom dikonversi menjadi titik kode, kemudian 32 dikurangkan dari mereka, lalu masing-masing diambil modulo 95. Ini sesuai dengan karakter ini, yang mencetak, "Hei Verden!"
sumber
4 bahasa, 138 byte
Cobalah online!
Py1, Py2, Py3, Proton; terima kasih kepada Tn. Xcoder; diterjemahkan dari jawaban Zacharý
sumber
4 bahasa, 115 byte
Perl 5 memberi
Hallo Wereld!
- TIORuby memberi
Hello World!
- TIOPython 2 memberi
Hej Verden!
- TIOPython 3 memberi
Hei Verden!
- TIOsumber
print (((“b”+”0"==0)and eval('"Hallo Wereld!"'))or(0and"Hello World!”or((1/2and"Hei"or"Hej")+" Verden!")));
Empat Bahasa, 650 byte kekalahan
Java memberi "Salut Lume!" Cobalah!
SILOS memberi "Hola Mundo" Cobalah!
Brainfuck memberikan "Ciao mondo!" Cobalah!
(Kode alphuck dimodifikasi dari halaman Esolangs di Alphuck )
Alphuck memberikan "Hello World!" Cobalah!
Baris awal \ u000A adalah kode Java. Kode on line satu adalah kode Alphuck, yang akan mengabaikan sisa kode (selama "p" dan "s" seimbang. Baris yang relevan untuk SIL / SILOS adalah "print Hola Mundo", dan kode brainfuck ada di akhir dan akan mengabaikan sisa kode.
sumber
+>++>+>+++[+++++[>+++++++++++>++++<<-]+++<]>>--.>+.>.>-.>.<--.++.-.<+++.>+.>+.
Menggunakan urutan byte [69, 104, 97, 112, 32]5 bahasa, 213 byte
Saya memutuskan untuk mencoba dan menulis sendiri jawaban kecil.
Bahasa:
C dan C ++ melihat kode sebagai:
auto i=.5;
sama (dalam efek) sama denganint i=0;
di C, tetapi sama dengandouble i=0.5;
di C ++.Cobalah online! (sebagai C)
Cobalah online! (sebagai C ++)
Python 3 melihat kode sebagai:
Cobalah online!
Bahasa scripting OFP melihat:
Fission melihat:
Cobalah online!
sumber
3 bahasa,
184181 byteHanya berfungsi sekali - Anda harus menghapus daftar untuk menjalankannya lagi.
Gores 1.4:
Helo Byd!
Gores 2.0:
Hello world!
Gosok 3.0 beta pada saat jawaban ini:
Hai dunia!
Penjelasan
Di Awal 1.4, menambahkan boolean ke daftar menambah
1
atau0
, tetapi di 2.0 dan di atasnya menambahtrue
ataufalse
, tetapi ketika memeriksa apakah item sama1
dengan <[] = []>, itu akan mengembalikan true jika item tersebut salah satu1
atautrue
, jadi kami menambahkan surat lain untuk itu dan memeriksanya.Di Scratch 3.0, daftar memiliki ukuran maksimum 200.000 item, jadi kami hanya menambahkan banyak item dan melihat apakah daftar itu panjang.
sumber
3 bahasa, 61 byte
Tambahkan ++ keluaran
Hai dunia!
Output jeli
Hello World!
Keluaran Foo
Helo Byd!
Hanya karena saya mengatur karunia tidak berarti saya tidak dapat mengambil bagian: D (ab) menggunakan trik pengaturan string yang brilian yang ditemukan Conor untuk Add ++
Bagaimana itu bekerja
Tambahkan ++
Jeli
Komentar dalam Jelly dapat dibentuk dengan sintaksis
ḷ“comment”
, yaitu bagaimana kode Tambah ++ dan Foo diabaikan. Kode yang sebenarnya dieksekusi oleh Jelly adalahFoo
Foo mengabaikan semua karakter di sini selain
"Helo Byd!"
, yang, seperti dalam tanda kutip, dikeluarkan.sumber