Desafio
Sua tarefa é escrever um trecho de código que produz outro trecho de código. Esse código deve, por sua vez, gerar outro código até o código final gerar o número inteiro 1 . A cadeia termina na primeira vez que 1 é gerado.
Nenhum de seus programas pode compartilhar caracteres (há uma exceção na seção Regras).
O envio vencedor será o envio com a cadeia mais longa. O desempatador terá o menor comprimento total do código.
Regras:
- Você pode usar funções, programas e trechos. Você pode assumir um ambiente REPL.
- Todas as funções devem ser escritas no mesmo idioma
- Os idiomas independentes de símbolos não são permitidos. Isso inclui idiomas parcialmente independentes de símbolos, como Headsecks.
- A formatação de saída padrão pode, opcionalmente, ser desconsiderada na saída de uma função. Isso inclui novas linhas à direita,
ans =
etc. - Você pode reutilizar o caractere de espaço (ponto de código ASCII 32), mas observe o seguinte:
- Você pode usar quantos caracteres de espaço desejar em uma das funções, mas restringi-lo ao máximo 5 em todas as outras funções.
- Você não pode reutilizar nenhum caractere se o ponto de código 32 não estiver no seu idioma.
Nenhum dos programas pode receber informações
A cadeia deve ter pelo menos dois programas.
Exemplo:
Seu código inicial é abc+cab+bac
. Isso gera:, foofoo*123
que por sua vez gera disp(~0)
, que gera 1
. Esta é uma cadeia de 3 programas, com um comprimento combinado de 29 (desempatador).
2^3
, o que seria apenas avaliado 1
ou teria que ser lambda:2^3
, por exemplo print(2^3)
, etc.?
1
ser um programa e a saída desse programa ou a cadeia termina quando 1
é a saída?