Tarefa
Escreva algum código que possa ser reorganizado em n programas diferentes em n idiomas diferentes, cada um produzindo um número distinto de 1 a n.
Não existem dois idiomas iguais, no entanto, versões diferentes de "o mesmo idioma" serão consideradas idiomas distintos, desde que tenham números de versão principais diferentes. Para esse desafio, os ambientes REPL não são distintos dos idiomas-pai, mas ainda são um idioma. Cada idioma deve ser executado em uma permutação distinta do código-fonte e gerar um número distinto no intervalo.
As permutações serão contadas em bytes e não em caracteres .
Você deve incluir cada permutação executada com o idioma em que é executada para fins de teste.
Pontuação
Sua pontuação será a
Onde N é o número de idiomas e L é o número de pedidos exclusivos dos bytes do programa.
L não é igual à duração do programa
(a menos que o programa tenha 1 ou 0 bytes)
Aqui está um script python para calcular L, cortesia de Conor O'Brien.
L é igual ao comprimento do fatorial do programa se e somente se não houver bytes repetidos no programa.
O objetivo é maximizar sua pontuação.
fonte
#
é o símbolo de comentário em 5 línguas, boa solução seria1#2345
Respostas:
34 idiomas, 19 bytes, pontuação: 38.832.018.459.912.437.760.000
Aqui está uma resposta rápida que reuni para mostrar que é possível obter uma resposta com pontuação melhor que 1.
1. NTFJ
Isso gera via código de caractere, o que é permitido por meta consenso .
Experimente aqui
2. Tcsh
3. 05AB1E
Experimente online!
4. Na verdade
Experimente online!
5. Befunge 98
Experimente online!
6. Cubix
Saídas por código de caractere
Experimente aqui
Código desdobrado:
7. Haskell 8 REPL
8. Sério
Experimente online!
9.> <>
Saídas por código de caractere
Experimente online!
10. Befunge
Experimente online!
11. cérebro
Experimente online!
12. 2sable
Experimente online!
13. Hexagonia
Saídas por código de caractere
Experimente online!
Código desdobrado:
14. R
Experimente online!
15. bc
16. Python 3 REPL
17. irb (Ruby 2.4 REPL)
18. PowerShell
19. Python 2 REPL
20. Python 1.6.1 REPL
21. Ksh
22. Bash
23. Zsh
24. Applescript
25. Lua REPL
26. Julia REPL
27. irb (Ruby 1.9.3 REPL)
28. Haskell 7 REPL
29. J
Experimente online!
30. Nim
31. peixe
32. PHP
<?php
não é necessário devido a essa metaExperimente online!
33. Golfscript
Experimente online!
34. Oitava
Experimente online!
fonte
.
um outro idioma, poderá ter 11. J:2#.2+3*3
echo
para ver a saída.1 idioma, 0 bytes, pontuação 1
Eu não sei como as pontuações mais altas chegarão nesse desafio, então vamos ver esse ponto.
Experimente online!
Na Retina, o programa vazio sem entrada é impresso
1
.Pontuação = 1! / 0! = 1/1 = 1
fonte
1
no R, por exemplo0
, portanto, 2 idiomas => score = 22 idiomas, 2 bytes, pontuação 1
Não supera a resposta de Leo, mas pensei em apresentar uma solução em 2 idiomas (bem, e o Wheat Wizard ninja conseguiu uma resposta de pontuação 2 no meio).
Retina , impressões
1
Experimente online!
É essencialmente o mesmo que o programa vazio de Leo.
Pitão , impressões
2
Experimente online!
É
repr(2)
assim que calcula o"2"
que é impresso como2
.fonte
26 idiomas, 46 bytes, Pontuação: 1.68861953e-28 (0.000000000000000000000000000168861953)
Todos os idiomas são comuns (ou seja, são realmente usados por pessoas em desenvolvimento) e não há solução REPL em nenhum idioma. Essa resposta nunca vai ganhar, mas isso não é motivo para não publicá-la ...
1. Python 2
Experimente online!
2. Python 3
Experimente online!
3. Ruby
Experimente online!
4. CoffeeScript
Experimente online!
5. PHP
Experimente online!
6. Perl 5
Experimente online!
7. Perl 6
Experimente online!
8. JavaScript (ES5)
Experimente online!
9. JavaScript (ES6)
Experimente online!
10. JavaScript (ES7)
Experimente online!
11. Lote
Não foi possível encontrar um intérprete online para este. Tente executar esse código no prompt de comando, se você estiver no Windows.
12. Bash
Experimente online!
13. CSS
Experimente online!
14. Menos
Experimente online!
15. caneta
Experimente online!
16. TypeScript
Experimente online!
17. Oitava
Experimente online!
18. Swift
Experimente online!
19. Julia
Experimente online!
20. Maxima
Experimente online!
21. Clojure
Experimente online!
22. Groovy
Experimente online!
23. CommonLisp
Experimente online!
24. EmacsLisp
Experimente online!
25. PicoLisp
Experimente online!
26. Logo
Experimente online!
fonte
print(18)//#**alechous: f{}:2345679+ ""enttd*
--
comentários. Se você adicionar,--
provavelmente também poderá trabalhar em pelo menos um tipo de haskell.12 idiomas, 16 bytes - Pontuação: 0.003
Imprime
1
em 2sableImprimir
10
em 05AB1EReorganizando os números binários imprime 2-9, 11-12 em:
L = 145297152000 12! = 479001600
Acabei de usar o TiO para obter uma lista de idiomas válidos para isso (se todos são considerados únicos?). Removido alguns idiomas duplicados, graças à entrada do Assistente de Trigo. Essa resposta parece muito baixa, embora eu sinta que tem potencial.
fonte
JavaScript (ES6), Python 2, Python 3, Japt, 4.735e-15
ES6 (1)
Python 2 (2)
Python 3 (3)
Japt (4)
fonte
4.73508590206e-15
btw.