Dopo la mia entrata in Obfuscated Hello World ho pensato che sarebbe stato divertente condividere il codice sottostante. Ma perché mostrare semplicemente il codice, rendiamolo anche un golf!
Sfida
Scrivi uno script che fa scorrere una stringa attraverso il terminale, da destra a sinistra, sistemandosi sul lato sinistro.
Ingresso
Accetta una stringa come argomento.
Risultato
Stampa il riquadro scorrevole su STDOUT. Larghezza massima di ~ 50 caratteri. Inizia con 0 o 1 carattere visualizzato. Spazio tra le lettere durante lo scorrimento. Si interrompe quando impostato (senza spazio aggiuntivo tra i caratteri di parola). Scorrimento lento, ma non troppo lento (<1s per iterazione).
Esempio
Esecuzione di script con arg 'Hello World'
H
dopo
H e l l o W o
dopo
H e l l o W o r l d
dopo
Hell o W o r l d
infine
Hello World
Per un esempio corrente, prova il mio codice dalla sfida "Hello World". Alla fine posterò il mio. Attualmente è di 202 caratteri in Perl. Ora che ci sono alcuni concorrenti, ho pubblicato il mio nelle risposte.
Vincitore
Non voglio che le restrizioni siano assolute, ecco perché le ho lasciate un po 'vaghe. Vincerà la sceneggiatura più breve che segue lo spirito del mio originale.
Appunti
Questo gioco presuppone l' xterm
ambiente. Se un altro ambiente dovesse rivelarsi utile, verranno confrontati solo ambienti simili e per ciascuno potrà essere dichiarato un vincitore separato.
Addendum (25 aprile 2012)
Per affrontare alcuni problemi in erba, sto prendendo una decisione. Il conteggio dei personaggi deve includere il codice necessario per:
- Flush STDOUT (Looking at you Ruby)
- Implementare
sleep
con un ritardo di <1 s (Ti guardo Perl)
Questo può essere fatto quando la riga di comando passa a un interprete, ma quei caratteri contano nel totale (senza spazi bianchi circostanti).
xterm
,vt102
...?