Sfida
Il tuo compito è quello di scrivere un pezzo di codice che produca un altro pezzo di codice. Tale codice deve a sua volta generare un altro codice fino a quando il codice finale non genera l'intero 1 . La catena termina la prima volta che viene emesso 1 .
Nessuno dei tuoi programmi può condividere caratteri (c'è un'eccezione nella sezione Regole).
La presentazione vincente sarà la presentazione con la catena più lunga. Il tie-breaker avrà la lunghezza del codice totale più breve.
Regole:
- È possibile utilizzare entrambe le funzioni, i programmi e i frammenti. È possibile presupporre un ambiente REPL.
- Tutte le funzioni devono essere scritte nella stessa lingua
- Le lingue indipendenti dai simboli non sono consentite. Ciò include lingue indipendenti parzialmente da simboli come Headsecks.
- La formattazione di output predefinita può facoltativamente essere ignorata nell'output di una funzione. Ciò include le nuove righe finali,
ans =
ecc. - È possibile riutilizzare il carattere spazio (punto di codice ASCII 32), ma tenere presente quanto segue:
- È possibile utilizzare tutti i caratteri spazio desiderati in una delle funzioni, ma limitarlo a un massimo di 5 in tutte le altre funzioni
- Non è possibile riutilizzare alcun carattere se il punto di codice 32 non è spazio nella propria lingua.
Nessuno dei programmi può ricevere input
La catena deve essere lunga almeno due programmi.
Esempio:
Il tuo codice iniziale è abc+cab+bac
. Questo produce:, foofoo*123
che a sua volta genera disp(~0)
, che produce 1
. Questa è una catena di 3 programmi, con una lunghezza combinata di 29 (tie breaker).
2^3
, che valuterà 1
o dovrebbe essere lambda:2^3
, ad esempio print(2^3)
, ecc.?
1
essere sia un programma che l'output di quel programma o la catena termina quando 1
è l'output?