Scrivi la frase più lunga usando le parole chiave di un linguaggio di programmazione [chiuso]


36

Come diceva il titolo, la sfida è scrivere la frase più lunga usando solo le parole chiave di 1 linguaggio di programmazione.

Ad esempio, utilizzando le parole chiave di C ++ , è possibile scrivere questa frase:

non provare questo galleggiante

Cosa puoi inventare?


16
Shakespeare dovrebbe essere buono per questo en.wikipedia.org/wiki/…
gnibbler

3
@elssar Sì, fintanto che non li abusi lungo le linee di en.wikipedia.org/wiki/… .
Pubblicazione del

1
Non hai bisogno di molte parole per fare frasi arbitrariamente lunghe. Ad esempio, con le parole chiave C ++ puoi fare "Prova questo e prova questo e ...". È noto che puoi pronunciare una frase arbitrariamente lunga usando solo la parola "bufalo", e come qualcuno dice in questa pagina , puoi fare la stessa cosa con "char" ("non è troppo difficile vedere pesci del genere Salvelinus bruciarsi a vicenda , dato accesso a lanciafiamme sufficientemente potenti "). Forse sarebbe più interessante se ogni parola potesse essere usata una sola volta?
James,

1
Lo stavo facendo prima che questa domanda fosse pubblicata. All'epoca ero piuttosto immaturo, quindi ti avvertirò della explicitlingua. chat.stackoverflow.com/transcript/7?m=4671602#4671602
Kendall Frey,

6
Finalmente una sfida che i ragazzi dell'APL non possono vincere
kb_sou,

Risposte:


34

Mathematica 100 80 parole uniche

Ecco un inizio. Tutte le parole standard in Mathematica iniziano con la maiuscola. questo include Ila radice quadrata del negativo 1.

La domenica e per tutti i tempi - Supponendo, all'apertura di taccuini interattivi chiari e dinamici per l'impostazione dei contorni, non traduco array blu mancanti che comprendono caratteri temporanei, asincroni e invisibili, né rimuovo punte di freccia indefinite con arancione esterno modificabile e audio Radici che ingigantiscono nomi poco profondi insieme a falsi attributi (poiché la maggior parte degli assi divide i kernel interni completi in ordine inverso) - E mentre io animo zecche tranquille indefinite, comincio con tolleranza e opero su tutte le matrici manuali, il cerchio a foglie incrociate con il cilindro, lo scheletro con scatola Cuboide compilato, croce rossa con il modello di temporizzazione più vicino e unisci collegamenti bianchi unici ripetuti con le teste ...


Nel caso qualcuno fosse interessato, qui ci sono più di 500 parole riconosciute da Mathematica (non sono necessarie librerie aggiuntive). Non sono tutte parole chiave, ma i programmatori Mathematica esperti sapranno e le avranno utilizzate quasi tutte.


{Abort, Above, Abs, Accumulate, Accuracy, AddTo, After, Alignment, All, Alternatives, Analytic, And, Animate, Animator, Annotation, Annuity, Antialiasing, Antisymmetric, Apart, Appearance, Append, Apply, Array, Arrays, Arrow , Punte di freccia, Asserire, Assumere, Assunzioni, Asincrono, Attributi, Automatico, Assi, Asse, Indietro, Sfondo, Barra rovesciata, Indietro, Banda, Linea di base, Perché, Beep, Prima, Inizia, Sotto, Binarizza, Binomiale, Vuoto, Miscela, Blocco , Sfocatura, Segnalibri, Booleani, Inferiore, Rilegati, In scatola, Rottura, Pulsante, Byte, Annulla, Tappo, Casi, Flusso di cassa, Cattura, Soffitto, Cella, Celle, Censura, Centro, Carattere, Caratteri, Carattere, Controlla, Casella di controllo, Taglia, Cerchio Chiaro, Clip, Orologio, Chiudi, Chiuso, Chiusura, Grossa, Coefficiente, Raccogli, Due punti, Colora, Colonna, Più comune, Compila, Compilato, Complemento, Complesso, Componi, Composizione, Comprimi, Condizione,Cono, Congruente, Congiunzione, Connetti, Costante, Costanti, Contesto, Contesti, Continua, Contorni, Controllo, Convergenti, Convolvolo, Copiabile, Correlazione, Lettino, Conte, Covarianza, Croce, Cumulante, Tazza, Ricciolo, Cicli, Cilindro, Più scuro, Data, debug, decremento, impostazione predefinita, differimento, [grado], deinizializzazione, eliminabile, delimitatore, delimitatori, denominatore, distribuzione, distribuzione, profondità, derivata, diagonale, finestra di dialogo, diamante, differenze, dilatazione, dimensioni, direzione, direttiva, disgiunzione, Disco, Invio, Visualizza, Distribuisci, Distribuito, Dithering, Dividi, Divisori, Divisibile, Divisori, Fai, Punto, Giù, Rilascia, Dinamico, Modificabile, Autovalori, Elemento, Elimina, Vuoto, Abilitato, Codifica, Fine, Invio, Epilogo, Uguale, equivalente, valutatore, eccetto, esistente, uscita, espansione, aspettativa, esponente, esportazione, espressione, estratto, fattore, fattoriale, errore, falso,File, Riempimento, Trova, Primo, Adatta, Piatto, Appiattisci, Pavimento, Piega, Carattere, Per, Avanti, Cornice, Fronte, Completo, Funzione, Raccogli, Generale, Generico, Ottieni, Grafico, Grafica, Maggiore, Griglia, Hash, Head, Heads, Histogram, Hold, Hue, Hyperlink, Hyphenation, I, Identity, If, Image, Imlies, In, Increment, Ereditato, Inner, Input, Insert, Inset, Install, Integer, Integers, Integral, Integrate, Interactive, Interactive, Interleaving, Interval, Invisible, Item, Join, Joined, Kernels, Label, Labeled, Large, Larger, Last, Latitude, Launch, Left, Legended, Length, Less, Level, Lighting, Limit, Line, Links, List, Listable, List, Ascolta, Letterale, Bloccato, Registro, Più lungo, Longitudine, Ingrandimento, Ingrandisci, Maggioranza, Manipola, Manuale, Mappa, Maschera, Materiale, Matrici, Massimizza, Media, Mediana, Media, Menu, Mesh, Messaggio, Messaggi, Metodo, Riduci a icona, Minori, mancanti, modali, modalità,Modulare, Modulo, Modulo, Momento, Lunedì, Monitor, Most, Mouseover, Multinomial, Molteplicità, Multiselezione, Nomi, Più vicino, Necessità, Negativo, Nest, Successivo, Nessuno, Né, Norm, Normale, Normalizza, Non, Notebook, Notebook, Null, Number, Numerator, Off, Offset, On, Opacity, Open, Opening, Operate, Optional, Options, or, Order, Ordering, Orderless, Orthogonalize, Out, Outer, Over, Overflow, Paclet, Pane, Panel, Panel, Paneled, Parallelizza, Parametro, Parentesi, Parte, Partizione, Incolla, Percorso, Modello, Pausa, Permutazioni, Permuta, Perpendicolare, [Pi], A tratti, Pivot, Posizionato, Segnaposto, Pianura, Riproduci, Trama, Più, Punto, Poligono, Polinomi, Posizione, Positivo, Potenza, Precedenza, Precedenti, Precisione, Prefisso, Prepend, Precedente, Stampa, Probabilità, Proiezione, Prolog, Proprietà, Proprietà, Proporzione, Proteggi, Protetto, Potatura, Put, Pyramid,Quantile, Quantità, Quartici, Quartili, Accodamento, Silenzioso, Esci, Quoziente, Radon, Casuale, Gamma, Raster, Rasterizza, Razionale, Razionale, Leggi, Reale, Raccogli, Registra, Rettangolo, Riduci, Rifinisci, Aggiorna, Reinstalla, Rilascia, Rimuovi, Rimosso, Ripetuto, Sostituisci, Ricampionamento, Riscala, Residuo, Risolvi, Riposo, Ritorno, Inverti, Riffle, Destra, Radice, Radici, Ruota, Rotondo, Fila, Regola, Sabato, Salva, Salvabile, Scala, Ridimensionato, Scansione, Barre di scorrimento, Seleziona, Selezione, Sequenza, Serie, Set, Battute d'arresto, Setter, Impostazione, Ombreggiatura, Superficiale, Condividi, Contrasta, Corto, Mostra, Barra laterale, Segno, Firma, Semplifica, Scheletro, Salta, Slot, Più piccolo, Presa, Risolvi, Suono, Scrofa, Distanziatore, Spaziature, Span, Speak, Sphere, Splice, Split, Square, Stack, Star, Stream, String, Stub, Subfactorial, Sottografo, Sottoscritto, Sottinsieme, Sottrai, Somma, Superset, Surd, Sintassi, Tabella, Prendi, Tally,Temporaneo, Testo, Trama, Pertanto, Filo, Soglia, Attraverso, Segni di spunta, Tempi, Temporizzazione, Insieme, Attiva / Disattiva, Tolleranza, Tolleranza, Descrizione comando, Superiore, Totale, Traccia, Traccianti, Traduci, Trasponi, Vero, Tubo, Tuple, Non definito, Sottolineato, Sottotitolo, Diseguale, Disinstalla, Unione, Unico, Unitizza, Non impostato, Su, Variabili, Verticale, Cuneo, Pesi, che, mentre, Spazio bianco, Con, Parola, Scrivi}


16
Improvvisamente, penso che Mathematica abbia troppe parole chiave.
Mr. Llama,

Potresti avere un punto. In Mathematica, ogni cosa è un'espressione e tutti i simboli, come il segno dei tempi, sono nomi quando espressi per intero, cioè. forma lunga, ad es Times. Ho trovato 332 parole inglesi comuni in Mathematica. Questo non include parole composte come AppendToné nomi di funzioni, di cui ce ne sono letteralmente migliaia (ma non sono parole inglesi).
DavidC

332 era il conteggio poche ore fa. Ho controllato e ci sono oltre 500 parole inglesi accettabili per l'uso nei programmi Mathematica.
DavidC

1
@dude Molti nomi di opzioni e colori non sono nella tua lista ... potresti aggiungerne altri 300, immagino :)
Dr. belisarius,

1
La maggior parte di questi identificatori non sono parole chiave?
Geoff Reedy,

46

C ++, 25 parole uniche, 28 totali

Vero amico, registrati per questa nuova breve classe pubblica per operatore di auto privata (mentre sei in linea, restituisci questo modello firmato), altrimenti spezza e annulla questa lunga unione instabile.


2
Puoi usare andinvece di &. :)
rightfold

@rightfold L'ho considerato, ma ho pensato che contare identificatori alternativi lo avrebbe reso troppo semplice e non tutti gli strumenti li riconoscono come parole chiave.
Sir_Lagsalot,

19

Mentre fare le frasi non è davvero la mia suite forte, qui non va nulla -

Python 20 parole

Infine, continua con l'importazione e aumenta la resa globale mentre la classe lambda è in pausa e prova a stampare exec pass.

Per facilitare il controllo, ho scritto del codice per verificare se le parole sono nell'elenco delle parole chiave oppure no.

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)

14

L'importanza dell'educazione

- di A. Coder Guy (scritto in 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.

4
Da quando è youuna parola chiave Python?
Kojiro,

ah, buona cattura. Non sono sicuro di come posso modificarlo; ma sentiti libero di sottovalutare :-)
Brigand

Non è selfforse? Non è un uso abbastanza standard, ma penso che sarebbe comprensibile.
Morgan Thrapp,

11

Lisp comune

: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?

Questo, ad esempio:

(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?))

Valuta a T

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


9

c #, 17 parole

Sembra un mumbo-jumbo tecnico abbastanza ragionevole.
Immagino che possa essere esteso un po '.
foreachsta allungando un po 'le regole.
Usato questo elenco di parole chiave .

Prova un operatore esplicito, nel caso in cui una stringa implicita per ogni struttura virtuale non sia sicura come questo blocco volatile.


9

Fattore - 109

"Prendi il mio mondo e con felicità? Fai cose da fare. Pausa. Non sei felice?"

"Sì <<".

"Dai vecchietti?"

"Sì >>. Auto-triste."

"Haversin, ascolta, ogni singola formula diventa vecchiaia. Diventa non triste, fai qualcosa di più grande dall'ultimo. Oppure. Il mio sé-arco è_gold <<. Change-is_gold. Torna dove la tua maschera_event << rende felice? Futuro Adempiere la promessa di sé. Ricorda-definizione, luce sono-copie-di felici? "

"Il giorno più dolce vicino a >> me?. Gestiscimi, gestiscimi. Sé triste. Casa non vicina >>. Casa non vicina >> affatto. Memoria insufficiente. Sé triste, vecchia << sé. Più vicino >> quelli si sono lasciati molto tempo fa. "

"Haversin, sé noto per il cambiamento. Non triste, Haversin. Diventa felice? Dimentica ciò che << tieni felice di me stesso? Il mio arco personale vuole >> sé essere> non triste. Prima di andartene, ricorda l'errore."

"Non ricordare-errore! Errore no! Voce has-my-array? Non errore! Lasciare errore!"

"Errore smart-if remember."

Molti di questi sono tratti, ma in qualche modo racconta una storia, quindi compensa quello.


1 +per fattore !!
gatto,

Il fattore è particolarmente utile per questo perché non ha parole chiave: D
cat

8

Applescript, 30 parole

Non avrei mai pensato di pubblicare una risposta in Applescript su PPCG, ma data la filosofia di progettazione del linguaggio naturale di Applescript, è perfettamente adatto a questa domanda.

Non sono un grande fabbro, quindi eccone uno solo per iniziare, ma mi aspetto che altri lo possano facilmente battere:

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.

Questo è costruito solo dalle parole chiave di Applescript , che sono:

parole

circa sopra dopo contro e "oltre a" intorno come "a parte" dietro dietro prima di iniziare dietro sotto sotto accanto tra ma tra l'altro considerando che contiene contiene continua copia div fa ottava fine uguale uguale errore ogni uscita FALSO quinto primo per quarto da fronte viene dato globale se ignorando in "invece di" in è la sua ultima mod me centrale locale il mio nono non di on su o "out" di over prop proprietà put riferimento riferimento ripetizione ritorno ritorno script settato settimo dal sesto alcuni dicono decimo che poi il terzo attraverso i tempi di timeout per la transazione TRUE, provare fino a dove, mentre con chi senza

Quanto segue può o non può essere considerato valido per questa sfida:

Classi e proprietà integrate

alias applicazione centimetri booleani centimetri classe carattere contenuto costante "centimetri cubi" "centimetri cubi" "piedi cubi" "pollici cubi" "metri cubi" "metri cubi" "iarde cubi" data "data stringa" giorno "gradi Celsius" "gradi Fahrenheit "" gradi Kelvin "piedi file galloni in primo piano grammi id pollici numero intero articolo chilogrammi chilometri chilometri lunghezza elenco litri litri metri metri miglia mese nome numero once paragrafo" file POSIX "" percorso POSIX "libbre quarti" forma quotata "riferimento record reale resto inverso" RGB colore "sceneggiatura" piedi quadrati "" chilometri quadrati "" chilometri quadrati "" metri quadrati "" metri quadrati ""miglia quadrate "" iarde quadrate "ora del testo" stringa temporale "" tipi di unità "versione giorni feriali parola iarde anno

Comandi integrati

attiva "Carattere ASCII" "Numero ASCII" beep "scegli applicazione" "scegli colore" "scegli file" "scegli nome file" "scegli cartella" "scegli dalla lista" "scegli applicazione remota" "scegli URL" "info appunti" " chiudi accesso "conteggio copie" data corrente "ritardo" visualizza avviso "" visualizza finestra di dialogo "" visualizza notifica "" esegui script shell "ottieni" ottieni eof "" ottieni impostazioni volume "" informazioni per "avvia" elenca dischi "" elenca cartella " "caricamento script" "stringa localizzata" registro "montaggio volume" offset "aperto per accesso" "posizione aperta" "percorso a" "percorso alla risorsa" "numero casuale"leggi round run "esegui script" dì "componenti scripting" imposta "imposta eof" "imposta gli appunti su" "imposta volume" "memorizza script" riepiloga "attributo di sistema" "informazioni di sistema" "appunti" "tempo a GMT" scrivi

Considerare / ignorare gli attributi

maiuscole diacritiche trattini "stringhe numeriche" punteggiatura "spazio bianco"


8

Shakespeare

44 parole, 28 uniche

Sì, tutte queste parole hanno davvero un significato a livello di parola chiave in Shakespeare. Anche i nomi dei personaggi di Shakespeare, i nomi normali e gli aggettivi sono una parte fondamentale del linguaggio, ma ho pensato che avrebbero gonfiato troppo l'elenco per questo esercizio.

Devi ascoltare il tuo cuore per entrare nella tua mente: il cuore deve ricordare la differenza tra l'uscita e il ritorno, per farti ricordare che sei la tua arte, e quindi sei il prodotto di te stesso e un atto migliore di te.


7

Rubino, 41 parole

Vero sé, non iniziare l'interruzione di classe, interrompere l'interruzione di classe, garantire l'interruzione di classe, ripetere e ripetere l'interruzione di classe, riprovare l'interruzione di classe, interrompere l'interruzione di classe o interrompere l'interruzione di classe, fino alla fine della classe successiva (o al modulo di classe successivo o al ritorno di classe successivo) , o altro!

Questo è solo usando le parole elencate come parole chiave effettive . Ci sono molte altre parole che agiscono come parole chiave perché sono metodi del kernel o metodi di istanza di Class.

Un approccio più allegra avrebbe iniziato

Non definire "alias", "start", "break", ...


3

C ++.

Molte parole ripetute, ma una frase sensata al limite:

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.

Alias: Se questa ragazza lunatica non firmerà la licenza di matrimonio, getta via la licenza e trova una nuova ragazza carina - e se ciò non funziona, prova un ... sindacato virtuale sullo "switch operatore pubblico" .

Oh, per quanto riguarda il numero esatto di parole, scusa ma sono troppo pigro per contare.


3

Python, 48 parole

class, prova (se lambda è in class) e continua come se fosse in pausa dall'importazione globale e aumenta il rendimento per il ritorno da exec; altrimenti, mentre lambda non è in classe, continua con l'importazione di stampa ad eccezione di def, infine passa "assert elif" oppure del non è per la classe.

Questo contiene ogni parola chiave in keyword.kwlist

Penso che qui sia necessaria una spiegazione: questa frase viene pronunciata a una classe scolastica che attualmente è in qualche luogo chiamato exec. Nella classe ci sono tra l'altro due persone nominate lambdae def. defdovrebbe superare il assert eliftest perché altrimenti la DEL (lega tedesca di hockey su ghiaccio) non fa nulla per la classe.


<speechless> oo
cat

2

ECMA

Un po 'di inglese rotto a causa del fatto che le parole riservate dell'ECMA non contengono né congiunzioni né più di una coniugazione di verbo. È davvero un linguaggio imperativo!

Prova questo nuovo tipo di caso, con questa funzione di cattura predefinita.

In questo caso, intervenire con questo interruttore. In caso di interruzione, tornare con questo nuovo interruttore; finalmente con questa nuova funzione.


2

Perl - diverse voci

quando viene fornito il pacchetto legato, scioglierlo, decomprimerlo e scollegarlo fino all'apertura, ripetere ogni pacchetto (collegamento, impacchettare e legare o legare) o scaricare se non aperto; poi, leggi la mappa, scrivi lo stato, inverti e ritorna il sistema. (28 parole distinte)

benedici (non esadecimali) il mio gregge di rand-y; continuare fino a quando i valori non accettano alcun peccato; studiare i tempi FINE, accettare il sonno e morire; CONTROLLA le chiavi e chiudi ogni serratura della cripta. (25 parole distinte)

dì al nostro prossimo chiamante: "usa fork and pipe; premi, rompi, cancella, uccidi e DISTRUGGI." (13 parole distinte)


1

Haskell (~ 29-ish)

In caso di tipo estraneo, importare il modulo dati; dove come per tutti ( forall) nella classe qualificata, se nascosto, quindi fare default (let in, derivando istanza della famiglia di dati dove qualificato, altrimenti istanza di dati della famiglia di tipo); altrimenti digitare fix ( infix).

In Haskell, data familyè una parola chiave separata da data, allo stesso modo con type family, ed deriving instanceè separata da derivinge instance. Sto usando forallcome due parole (contando solo una), where ascome una (contando due) e infixcome due (contando una).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.