99 é uma linguagem de programação que inventei no início desta semana para o meu desafio. Escreva um intérprete para 99 . (Inventado, mas nunca necessário para implementar, graças a meia dúzia de vocês.;)) A especificação completa do idioma está nesse desafio, então não estou me preocupando em repassar tudo aqui.
Em 99, você pode imprimir caracteres ASCII individuais para stdout, mas devido às restrições do idioma, nem sempre é claro como imprimir um caractere específico da maneira mais concisa possível.
Para cada um dos 128 caracteres ASCII, escreva um programa 99 que não aceite nenhuma entrada e produz esse único caractere. Você pode codificar uma ou todas essas respostas manualmente ou pode escrever outro programa (em qualquer idioma que desejar) para gerá-las para você.
A soma dos caracteres em cada um dos seus 128 99 programas é a sua pontuação. A pontuação mais baixa vence. As novas linhas contam como um caractere.
Lembre-se, em 99 , apenas variáveis de tamanho par, como 9999
caracteres ASCII de saída (variáveis de tamanho ímpar, números inteiros de saída). Seu valor é dividido por 9 e, em seguida, utilizado o mod 128, portanto, os valores não precisam estar em um determinado intervalo para mapear para caracteres ASCII. Por exemplo, os valores internos 297, 1449 e -855 correspondem ao caractere, !
porque quando são divididos por 9 e tomados pelo mod 128, todos se tornam 33, que é o código de caractere !
.
Se você precisar de um intérprete para 99 , sugiro a resposta Python do Mac .
Eu sei que disse que meu próximo desafio seria mais interativo, mas ainda estou trabalhando nas coisas para esse.