Definamos un programa prístino como un programa que no tiene ningún error en sí mismo, pero lo hará si lo modifica quitando cualquier subcadena contigua de N caracteres, donde 1 <= N < program length
.
Por ejemplo, el programa Python 2 de tres caracteres
`8`
es un programa impecable ( gracias, Sp ) porque todos los programas resultantes de la eliminación de subcadenas de longitud 1 causan errores (errores de sintaxis, de hecho, pero cualquier tipo de error funcionará):
8`
``
`8
y también todos los programas resultantes de la eliminación de subcadenas de longitud 2 causan errores:
`
`
Si, por ejemplo, `8
hubiera sido un programa sin errores `8`
, no sería perfecto porque todos los resultados de la eliminación de la subcadena deben ser erróneos.
Su tarea en este desafío es escribir el programa prístino más corto posible que no requiera ninguna entrada pero que emita cualquiera de las siguientes cinco palabras:
world
earth
globe
planet
sphere
La palabra que elijas depende totalmente de ti. La única palabra más una nueva línea final opcional debe imprimirse en stdout (o la alternativa más cercana a su idioma). El programa más corto en bytes gana.
Notas:
- Se requiere un programa independiente, no una función.
- Las palabras distinguen entre mayúsculas y minúsculas; salida
World
oEARTH
no está permitido. - Las advertencias del compilador no cuentan como errores.
- Los subprogramas de error pueden tomar entrada o dar salida o hacer cualquier otra cosa siempre y cuando eventualmente se produzcan errores.
Aquí hay un fragmento de pila que enumerará qué programas necesitan error dado un programa potencialmente prístino:
<script src='https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js'></script><script>function go() { var s = $('#i').val(), e = []; for (var i = 1; i < s.length; i++) { for (var j = 0; j <= s.length - i; j++) { e.push(s.substring(0, j) + s.substring(j + i)); } } $('#o').val(e.join('\n---\n')); }</script>Program:<br><textarea id='i' rows='16' cols='80'>`8`</textarea><br><button onclick='go()' type='button'>Go</button><br><br>Programs that should error: (--- separated)<br><textarea id='o' rows='16' cols='80'></textarea><br>