Tulis kalimat terpanjang menggunakan kata kunci dari bahasa pemrograman [ditutup]

36

Seperti judulnya, tantangannya adalah menulis kalimat terpanjang dengan hanya menggunakan kata kunci dari 1 bahasa pemrograman.

Misalnya, menggunakan kata kunci C ++ , adalah mungkin untuk menulis kalimat ini:

jangan coba-coba mengapung ini

Apa yang bisa kamu pikirkan?

Pubby
sumber
16
Shakespeare harusnya baik untuk ini en.wikipedia.org/wiki/…
gnibbler
3
@elssar Ya, selama Anda tidak menyalahgunakannya di sepanjang baris en.wikipedia.org/wiki/… .
Pubby
1
Anda tidak perlu banyak kata untuk membuat kalimat panjang yang sewenang-wenang. Misalnya, dengan kata kunci C ++ Anda dapat melakukan "Coba ini dan coba ini dan ...". Anda bisa membuat kalimat panjang yang sewenang-wenang hanya dengan menggunakan kata "kerbau", dan seperti yang dikatakan seseorang di halaman ini , Anda dapat melakukan hal yang sama dengan "char" ("tidak terlalu sulit untuk melihat ikan dari genus Salvelinus yang saling menghanguskan satu sama lain." , diberikan akses ke penyembur api yang cukup kuat "). Mungkin akan lebih menarik jika setiap kata hanya bisa digunakan satu kali?
James
1
Saya melakukan ini sebelum pertanyaan ini diposting. Saya belum cukup dewasa pada saat itu, jadi saya akan memperingatkan Anda tentang explicitbahasa. chat.stackoverflow.com/transcript/7?m=4671602#4671602
Kendall Frey
6
Akhirnya sebuah tantangan yang tidak dapat dimenangkan oleh para pemain APL
kb_sou

Jawaban:

34

Mathematica 100 80 kata unik

Ini awal. Semua kata standar dalam Mathematica dimulai dengan huruf besar. ini termasuk I, akar kuadrat dari negatif 1.

Pada Hari Minggu, Dan Untuk Semua Waktu - Dengan asumsi, Pada Pembukaan Notebook Interaktif Dinamis Yang Jelas Untuk Mengatur Kontur, Saya Tidak Menerjemahkan Array Biru Yang Berentang Sementara, Asinkron, Dan Karakter Yang Tak Terlihat, Juga Saya Tidak Menghapus Panah Tidak Terdefinisi Dengan Diedit Dan Terdengar Oranye Luar Akar Yang Memperbesar Nama Dangkal Bersama-Sama Dengan Atribut Palsu (Karena Kebanyakan Sumbu Memecah Kernel Dalam Penuh Dengan Urutan Terbalik) - Dan Sementara Saya Menghidupkan Kutu Tenang Yang Tidak Terdefinisi, Saya Memulai Dengan Toleransi Dan Mengoperasikan Semua Matriks Manual, Lingkaran Berselubung Dengan Silinder, Kotak Kerangka Dengan Dikompilasi berbentuk kubus, Palang Merah Dengan Pola Waktu Terdekat, Dan Bergabung Dengan Link Putih Unik Berulang ...


Jika ada yang tertarik, berikut ini 500+ kata yang dikenali oleh Mathematica (tidak perlu perpustakaan tambahan). Mereka tidak semua kata kunci, tetapi programmer Mathematica yang berpengalaman akan tahu dan telah menggunakan hampir semuanya.


{Abort, Above, Abs, Accumulate, Accuracy, AddTo, After, Alignment, All, Alternatives, Analytic, Dan, Animate, Animator, Annotation, Annuity, Antialiasing, Antisymmetric, Apart, Penampilan, Tambahkan, Terapkan, Array, Array, Panah , Panah, Penegasan, Asumsi, Asumsi, Asinkron, Atribut, Otomatis, Sumbu, Sumbu, Belakang, Latar Belakang, Garis miring terbalik, Mundur, Pita, Garis Dasar, Karena, Bunyi Bip, Sebelum, Mulai, Di Bawah, Binari, Binomial, Kosong, Campuran, Blok , Kabur, Bookmark, Boolean, Bawah, Batas, Kotak, Istirahat, Tombol, Byte, Batalkan, Tutup, Kasus, Arus Kas, Tangkapan, Langit-langit, Sel, Sel, Sensor, Pusat, Karakter, Karakter, Periksa, Kotak Centang, Chop, Lingkaran , Hapus, Klip, Jam, Tutup, Ditutup, Penutupan, Kasar, Koefisien, Kumpulkan, Colon, Pewarnaan, Kolom, Umum, Kompilasi, Dikompilasi, Kompilasi, Kompleks, Komposisi, Komposisi, Kompres, Kondisi,Kerucut, Kongruen, Konjungsi, Hubungkan, Konstan, Konstanta, Konteks, Konteks, Lanjutkan, Kontur, Kontrol, Konvergensi, Berputar, Dapat Disalin, Korelasi, Cot, Count, Kovarian, Salib, Cumulant, Piala, Keriting, Siklus, Silinder, Lebih Gelap, Tanggal, Debug, Pengurangan, Default, Tunda, [Gelar], Deinialisasi, Dihapus, Pembatas, Pembatas, Penyebut, Menyebarkan, Menyebarkan, Kedalaman, Derivatif, Diagonal, Dialog, Berlian, Perbedaan, Dilasi, Dimensi, Arah, Arahan, Disjungsi, Disk, Pengiriman, Tampilan, Bagikan, Didistribusikan, Menelusuri, Membagi, Membagi, Dapat dibagi, Pembagi, Lakukan, Dot, Bawah, Turun, Dinamis, Dapat diedit, Nilai Eigen, Elemen, Hilangkan, Kosong, Diaktifkan, Menyandikan, Mengakhiri, Masukkan, Epilog, Sama, Setara, Evaluator, Kecuali, Ada, Keluar, Perluas, Ekspektasi, Eksponen, Ekspor, Ekspresi, Ekstrak, Faktor, Faktorial, Gagal, Palsu,File, Mengisi, Temukan, Pertama, Fit, Datar, Ratakan, Lantai, Lipat, Font, Untuk, Maju, Bingkai, Depan, Penuh, Fungsi, Kumpulkan, Umum, Generik, Dapatkan, Grafik, Grafik, Lebih Besar, Kisi, Hash, Head, Heads, Histogram, Hold, Hue, Hyperlink, Hyphenation, I, Identity, If, Image, Implies, In, Increment, Inherited, Inner, Input, Insert, Inset, Instal, Integer, Integer, Integral, Integate, Interactive, Interleaving, Interval, Invisible, Item, Gabung, Bergabung, Kernel, Label, Label, Besar, Lebih Besar, Terakhir, Latitude, Peluncuran, Kiri, Legenda, Panjang, Lebih Sedikit, Level, Penerangan, Batas, Garis, Tautan, Daftar, Terdaftar, Dengar, Literal, Terkunci, Log, Terpanjang, Bujur, Perbesar, Perbesar, Mayoritas, Memanipulasi, Manual, Peta, Masking, Material, Matriks, Maksimalkan, Mean, Median, Medium, Menu, Mesh, Pesan, Pesan, Metode, Minimalkan, Di bawah umur, Hilang, Modal, Mode,Modular, Modul, Modulus, Momen, Senin, Monitor, Sebagian, Mouseover, Multinomial, Multiplicity, Multiselection, Nama, Terdekat, Kebutuhan, Negatif, Sarang, Berikutnya, Tidak Ada, Nor, Norm, Normal, Normalisasi, Tidak, Notebook, Notebook, Null, Number, Numerator, Off, Offset, On, Opacity, Open, Opening, Optional, Options, Or, Orde, Ordering, Orderless, Orthogonalize, Out, Outer, Over, Overflow, Paclet, Pane, Panel, Paneled, Paralelisasi, Parameter, Parenthesize, Bagian, Partisi, Tempel, Pola, Jeda, Permutasi, Permutasi, Perpendicular, [Pi], Piecewise, Pivoting, Ditempatkan, Placeholder, Polos, Putar, Plot, Plus, Titik, Poligon, Polinomial, Posisi, Positif, Daya, Presedensi, Precedes, Presisi, Awalan, Prepend, Sebelumnya, Cetak, Probabilitas, Proyeksi, Prolog, Properti, Properti, Proporsi, Melindungi, Dilindungi, Pemangkasan, Put, Piramida,Kuantil, Kuantitas, Kuartik, Antrian, Tenang, Berhenti, Quotient, Radon, Acak, Kisaran, Raster, Rasterize, Rasional, Rasional, Baca, Nyata, Menuai, Rekam, Persegi Panjang, Kurangi, Perbaiki, Perbarui, Refresh, Pasang Ulang, Rilis, Hapus, Dihapus, Diulang, Ganti, Disampel Ulang, Skala Ulang, Sisa, Selesaikan, Istirahat, Kembali, Balikkan, Riffle, Kanan, Root, Roots, Putar, Putaran, Baris, Aturan, Sabtu, Simpan, Simpan, Skala, Skala, Scan, Bilah Gulir, Pilih, Pilihan, Urutan, Seri, Set, Kemunduran, Setter, Pengaturan, Shading, Dangkal, Bagikan, Pertajam, Pendek, Tampilkan, Bilah Samping, Tanda, Tanda Tangan, Sederhanakan, Kerangka, Lewati, Slot, Lebih Kecil, Socket, Selesaikan, Sound, Sow, Spacer, Spacings, Rentang, Bicara, Sphere, Splice, Split, Square, Stack, Star, Streams, String, Stub, Subfaktorial, Subgraph, Berlangganan, Subset, Kurangi, Sum, Superset, Surd, Sintaks, Table, Ambil, Tally,Sementara, Teks, Tekstur, Oleh karena itu, Thread, Ambang Batas, Melalui, Kutu, Waktu, Pengaturan Waktu, Bersama-sama, Beralih, Toggler, Toleransi, Tooltip, Atas, Total, Jejak, Pelacak, Terjemahkan, Transpose, True, Tube, Tuples, Undefined, Digarisbawahi, Underscript, Tidak Sama, Hapus Instalasi, Serikat, Unik, Menyatukan, Membatalkan, Atas, Variabel, Vertikal, Baji, Bobot, Yang, Sementara, Spasial, Dengan, Word, Tulis}

DavidC
sumber
16
Tiba-tiba, saya pikir Mathematica memiliki terlalu banyak kata kunci.
Tn. Llama
Anda mungkin ada benarnya. Dalam Mathematica, semuanya adalah ekspresi dan semua simbol, seperti tanda-waktu, adalah nama ketika diekspresikan secara penuh, yaitu. bentuk panjang, misalnya Times. Saya menemukan 332 kata bahasa Inggris yang umum di Mathematica. Ini tidak termasuk kata-kata majemuk seperti AppendToatau nama fungsi, yang jumlahnya ribuan (tetapi sebenarnya bukan kata-kata bahasa Inggris).
DavidC
332 adalah hitungan beberapa jam yang lalu. Saya memeriksa, dan ada lebih dari 500 kata dalam bahasa Inggris yang dapat digunakan dalam program Mathematica.
DavidC
1
@ Bung Banyak nama Opsi dan Warna tidak ada dalam daftar Anda ... Anda bisa menambahkan 300 lagi, saya kira :)
Dr. belisarius
1
Bukankah sebagian besar pengidentifikasi ini, bukan kata kunci?
Geoff Reedy
46

C ++, 25 kata unik, 28 total

Teman sejati, lakukan pendaftaran goto untuk kelas publik pendek baru ini untuk operator mobil pribadi (saat inline, kembalikan templat bertanda tangan ini), kalau tidak, batalkan & batalkan persatuan volatile yang panjang ini.

Sir_Lagsalot
sumber
2
Anda bisa menggunakan andbukan &. :)
rightfold
@foldfold saya menganggapnya, tetapi saya merasa menghitung pengidentifikasi alternatif akan membuatnya terlalu mudah, dan tidak semua alat mengenalinya sebagai kata kunci.
Sir_Lagsalot
19

Meskipun membuat kalimat tidak benar-benar suite kuat saya, tidak ada yang terjadi -

Python 20 kata

Akhirnya, lanjutkan dengan mengimpor dan meningkatkan hasil global sementara kelas lambda dalam istirahat dan mencoba dan mencetak exec lulus.

Untuk membantu memeriksa, saya menulis beberapa kode untuk memeriksa apakah kata-katanya ada dalam daftar kata kunci atau tidak.

from keyword import kwlist
from re import findall

def kwcheck(sentence):
    """Check whether all the words of a sentence are Python keywords"""
    words= findall(r'\w+', sentence)
    for word in words:
        if word.lower() not in kwlist:
            return False
    return True, len(words)

if __name__ == '__main__':
    sen= raw_input("Enter your sentence: ")
    print kwcheck(sen)
elssar
sumber
14

Pentingnya Pendidikan

- oleh A. Coder Guy (ditulis dengan Python)

Continue class, except if class is not for you.  
With no class, raise and assert!  Or yield, pass,
and break.  Try and continue!  Or - finally - return from class.
Perampok
sumber
4
Sejak kapan youkata kunci Python?
kojiro
ha, tangkapan yang bagus. Tidak yakin bagaimana saya bisa memodifikasinya; tapi jangan ragu untuk membatalkan :-)
Brigand
Bukan untuk selfmungkin? Ini bukan penggunaan standar, tapi saya pikir itu bisa dimengerti.
Morgan Thrapp
11

Gangguan umum

:In :Common :Lisp :a :keyword :is :simply :a :symbol :which :has :the :KEYWORD :home :package :which :is :true :of :all :symbols :starting :with :a :colon :so :you :can :construct :arbitrarily :long :sentences. :Do :I :win?

Ini, misalnya:

(every #'keywordp '(:In :Common :Lisp :a :keyword :is :simply :a :symbol :which :has :the :KEYWORD :home :package :which :is :true :of :all :symbols :starting :with :a :colon :so :you :can :construct :arbitrarily :long :sentences. :Do :I :win?))

Mengevaluasi ke T

Lihat http://www.lispworks.com/documentation/HyperSpec/Body/26_glo_k.htm

Strigoides
sumber
9

c #, 17 kata

Ini terlihat seperti teknis omong kosong teknis yang cukup masuk akal.
Saya kira itu bisa diperpanjang sedikit.
foreachsedikit meregangkan aturan.
Digunakan daftar kata kunci ini .

Coba operator eksplisit, jika string implisit untuk setiap virtual struct sama tidak amannya dengan kunci volatile ini.

ugoren
sumber
9

Faktor - 109

"Ambil duniaku dan dengan bahagia? Buat barang-barang yang harus dilakukan. Diam. Diri tidak bahagia?"

"Ya <<."

"Dari oldies?"

"Ya >>. Cukup sedih."

"Haversin, dengarkan, masing-masing dan setiap formula menjadi oldies. Menjadi tidak sedih, melakukan sesuatu yang lebih besar dari yang terakhir. Atau. My-arch self is_gold <<. Ubah-is_gold. Kembali ke mana your_event_mask << bahagia? Di masa depan? "Memenuhi janji tentang diri. Ingat-definisi, cahaya adalah-salinan-dari bahagia?"

"Hari termanis di dekat >> aku? Pegangan-aku, pegang-aku. Sedih diri. Rumah tidak dekat >>. Rumah tidak dekat >> sama sekali. Kehabisan memori. Sedih diri, tua << diri. Kebanyakan dekat >> yang meninggalkan diri lama. "

"Haversin, perubahan-diri yang dikenal. Tidak sedih, Haversin. Menjadi bahagia? Lupakan apa yang << menjauhkan diri dari bahagia? My-arch self inginkan >> diri menjadi> tidak sedih. Sebelum pergi, ingat-kesalahan."

"Tidak ingat-kesalahan! Kesalahan tidak! My-array-entri-bukan? Kesalahan! Tinggalkan kesalahan!"

"Cerdas-jika ingat-kesalahan."

Banyak dari ini yang membentang, tetapi agaknya menceritakan sebuah kisah, jadi itu bisa menggantikannya.

Matthew Rolph
sumber
1 +untuk Faktor !!
kucing
Factor sangat baik untuk ini karena tidak memiliki kata kunci: D
cat
8

Applescript, 30 kata

Saya tidak pernah berpikir saya akan memposting jawaban Applescript di PPCG, tetapi mengingat filosofi desain bahasa alami Applescript, sangat cocok untuk pertanyaan ini.

Saya bukan pengrajin kata-kata, jadi ini satu-satunya untuk memulai, tetapi saya sepenuhnya berharap orang lain akan dengan mudah mengalahkan ini:

Beneath the eighth error, my third script is ignoring the sixth local copy
of the fourth transaction to the seventh property whose reference is given
to repeat every tenth second.

Ini dibangun hanya dari kata kunci Applescript , yaitu:

Kata kunci

tentang di atas setelah melawan dan "selain dari" sekitar sebagai "selain dari" di belakang sebelum mulai di bawah di bawah di samping di antara tetapi dengan mempertimbangkan berisi terus copy div apakah delapan lainnya sama dengan kesalahan setiap keluar FALSE kelima pertama untuk keempat dari depan dapat diberikan global jika mengabaikan "bukannya" ke apakah itu lokal terakhir saya sedang mod kesembilan saya tidak pada atau "keluar" dari properti prop berlebih ref referensi mengulangi pengembalian skrip kedua set ketujuh sejak keenam beberapa mengatakan kesepuluh bahwa yang ketiga kemudian Melalui waktu batas waktu untuk transaksi TRUE coba sampai gunakan di mana sementara yang dengan tanpa

Berikut ini mungkin atau mungkin tidak dianggap sah untuk tantangan ini:

Kelas dan properti bawaan

alias aplikasi boolean sentimeter sentimeter karakter kelas isinya konstan "sentimeter kubik" "sentimeter kubik" "kaki kubik" "inci kubik" "meter kubik" "meter kubik" "meter kubik" "string tanggal" string "hari" derajat Celsius "" derajat Fahrenheit "" derajat Kelvin "kaki mengajukan galon terdepan gram id inci bilangan bulat item kilometer kilometer panjang daftar mil liter liter meter mil mil bulan nama nomor ons paragraf" file POSIX "" POSIX path "pound quarts" bentuk dikutip "real record reference rest reverse" RGB warna "skrip berjalan" kaki persegi "" kilometer persegi "" kilometer persegi "" meter persegi "" meter persegi ""mil persegi "" meter persegi "waktu teks" string waktu "" tipe unit "versi kata hari kerja, meter tahun

Perintah Built-in

aktifkan "karakter ASCII" "nomor ASCII" beep "pilih aplikasi" "pilih warna" "pilih file" "pilih nama file" "pilih folder" "pilih dari daftar" "pilih aplikasi jarak jauh" "pilih URL" "info clipboard" " tutup akses "copy count" tanggal saat ini "tunda" display alert "" display dialog "" display notification "" do script script "get" get eof "" get volume "" info untuk "launch" list disks "" folder daftar " "memuat skrip" "string lokal" log "mount volume" offset "buka untuk akses" "buka lokasi" "path ke" "path to resource" "nomor acak"baca run run "run script" katakan "komponen skrip" set "set eof" "atur clipboard ke" "set volume" "store script" rangkum "atribut sistem" "info sistem" "the clipboard" "waktu untuk GMT" tulis

Mempertimbangkan / Mengabaikan atribut

case diacriticals tanda hubung "string numerik" tanda baca "white space"

Trauma Digital
sumber
8

Shakespeare

44 kata, 28 unik

Ya, semua kata ini benar-benar memiliki signifikansi tingkat kata kunci di Shakespeare. Nama karakter Shakespeare, kata benda normal dan kata sifat juga merupakan bagian inti dari bahasa ini, tetapi saya pikir mereka terlalu membengkak dalam daftar untuk latihan ini.

Anda harus mendengarkan hati Anda untuk memasuki pikiran Anda: hati akan mengingat perbedaan antara jalan keluar dan kembali, agar Anda ingat Anda adalah seni Anda, dan karenanya Anda adalah produk dari diri Anda sendiri dan tindakan yang lebih baik daripada diri Anda sendiri.

Luke
sumber
7

Ruby, 41 kata

Diri sejati, jangan mulai istirahat kelas, istirahat kelas akhir, memastikan istirahat kelas, ulang dan ulang kelas, coba lagi istirahat kelas, istirahat kelas penyelamatan, atau istirahat kelas, hingga kelas berikutnya (atau modul kelas berikutnya atau pengembalian kelas berikutnya) , atau yang lain!

Itu hanya menggunakan kata-kata yang terdaftar sebagai kata kunci yang sebenarnya . Ada banyak kata lain yang bertindak seperti kata kunci karena mereka adalah metode kernel atau metode instance dari Class.

Pendekatan yang lebih nakal akan dimulai

Jangan def "alias", "mulai", "istirahat", ...

histokrat
sumber
3

C ++.

Banyak kata yang diulang, tetapi kalimat yang masuk akal:

If this volatile friend false and do return unsigned public union template throw union
template goto void for false friend not using class, and try switch for new protected
union using true friend, or else catch long, private break using this public operator
switch for explicit union using new virtual friend if union for this friend not long and
true.

Aka: Jika gadis murung ini tidak akan menandatangani surat nikah, buang lisensi dan temukan gadis baru yang baik - dan jika itu tidak berhasil, coba saja ... serikat virtual melalui "saklar operator publik" .

Oh, sejauh jumlah kata yang tepat, maaf tapi aku terlalu malas untuk menghitung.

Jerry Coffin
sumber
3

Python, 48 kata

kelas, coba (jika lambda ada di kelas) dan lanjutkan seolah-olah terpisah dari impor global dan tingkatkan hasil untuk pengembalian dari eksekutif; lain, sementara lambda tidak di kelas, lanjutkan dengan impor cetak kecuali untuk def, akhirnya lulus 'tegaskan elif' atau del tidak untuk kelas.

Ini berisi setiap kata kunci dalam keyword.kwlist

Saya pikir beberapa penjelasan diperlukan di sini: Kalimat ini dikatakan untuk kelas sekolah yang saat ini di beberapa tempat disebut exec. Di kelas, ada antara lain dua orang bernama lambdadan def. defharus lulus assert elifujian karena jika tidak DEL (liga hoki es Jerman) tidak ada artinya bagi kelas.

jazzpi
sumber
<speechless> oo
cat
2

ECMA

Sedikit bahasa Inggris yang rusak karena fakta bahwa kata-kata yang dipesan ECMA tidak mengandung konjungsi atau lebih dari satu konjugasi kata kerja. Ini benar-benar bahasa yang sangat penting!

Cobalah jenis caseof baru ini, dengan fungsi tangkapan default ini.

Dalam hal ini, istirahat dengan sakelar ini. Jika tangkapan putus, kembalilah dengan sakelar baru ini; akhirnya menyerah dengan fungsi baru ini.

kojiro
sumber
2

Perl - beberapa entri

ketika diberikan paket terikat, lepaskan dan hapus tautan sampai terbuka, ulangi setiap paket (tautan, bungkus dan ikat atau ikat) atau buang jika tidak dibuka; selanjutnya, baca peta, tulis status, balikkan dan kembalikan sistem. (28 kata berbeda)

memberkati (bukan hex) rand-y kawananku; terus sampai nilai-nilai tidak menerima dosa; pelajari waktu akhir, terima tidur dan mati; PERIKSA kunci dan tutup setiap kunci crypt. (25 kata berbeda)

beri tahu penelepon kami berikutnya: "gunakan garpu dan pipa; dorong, patahkan, hapus, bunuh, dan HANCURKAN." (13 kata berbeda)

Ralph Marshall
sumber
1

Haskell (~ 29-ish)

Dalam hal jenis asing, impor modul data; dimana untuk semua ( forall) di kelas yang berkualifikasi, jika bersembunyi, maka lakukan default (biarkan, turun turunan dari keluarga data mana yang memenuhi syarat, jika tidak, instance data dari jenis keluarga); lain ketik fix ( infix).

Di Haskell, data familyadalah kata kunci terpisah dari data, demikian juga dengan type family, dan deriving instanceterpisah dari derivingdan instance. Saya menggunakan forallsebagai dua kata (hanya menghitung satu), where assebagai satu (menghitung dua), dan infixsebagai dua (menghitung satu).

archaephyrryx
sumber