Tarea
Escriba un código que se pueda reorganizar en n programas diferentes en n idiomas diferentes, cada uno de los cuales generará un número distinto de 1 a n.
No hay dos idiomas que sean iguales, sin embargo, las diferentes versiones de "el mismo idioma" se considerarán idiomas distintos, siempre que tengan diferentes números de versiones principales. Para este desafío, los entornos REPL no son distintos de sus idiomas principales, pero siguen siendo un idioma. Cada idioma debe ejecutarse en una permutación distinta del código fuente y generar un número distinto en el rango.
Las permutaciones se contarán en bytes, no en caracteres .
Debe incluir cada permutación que se ejecute con el idioma en el que se ejecuta con fines de prueba.
Puntuación
Tu puntaje será el
Donde N es el número de idiomas y L es el número de ordenamientos únicos de los bytes del programa.
L no es igual a la duración del programa
(a menos que el programa tenga 1 o 0 bytes)
Aquí hay un script de Python para calcular L cortesía de Conor O'Brien.
L es igual a la longitud del factorial del programa si y solo si no hay bytes repetidos en el programa.
El objetivo es maximizar tu puntaje.
fuente
#
el símbolo de comentario está en 5 idiomas, una buena solución sería1#2345
Respuestas:
34 idiomas, 19 bytes, puntaje: 38,832,018,459,912,437,760,000
Aquí hay una respuesta rápida que reuní para mostrar que es posible obtener una puntuación de respuesta mejor que 1.
1. NTFJ
Esto sale a través del código de caracteres, que está permitido por meta consenso .
Pruébalo aquí
2. Tcsh
3. 05AB1E
Pruébalo en línea!
4. En realidad
Pruébalo en línea!
5. Befunge 98
Pruébalo en línea!
6. Cubix
Salidas por código de caracteres
Pruébalo aquí
Código desplegado:
7. Haskell 8 REPL
8. En serio
Pruébalo en línea!
9.> <>
Salidas por código de caracteres
Pruébalo en línea!
10. Befunge
Pruébalo en línea!
11. brainbool
Pruébalo en línea!
12. 2sable
Pruébalo en línea!
13. Hexagonía
Salidas por código de caracteres
Pruébalo en línea!
Código desplegado:
14. R
Pruébalo en línea!
15. a.
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
Pruébalo en línea!
30. Nim
31. pescado
32. PHP
<?php
no es necesario debido a este metaPruébalo en línea!
33. Golfscript
Pruébalo en línea!
34. octava
Pruébalo en línea!
fuente
.
y otro idioma, puede tener 11. J:2#.2+3*3
echo
para ver la salida.1 idioma, 0 bytes, puntaje 1
No sé qué puntajes obtendrán en este desafío, así que tomemos este lugar.
Pruébalo en línea!
En Retina, se imprime el programa vacío sin entrada
1
.Puntuación = 1! / 0! = 1/1 = 1
fuente
1
en R, por ejemplo0
, entonces 2 idiomas => puntaje = 22 idiomas, 2 bytes, puntaje 1
No supera la respuesta de Leo, pero pensé en presentar una solución de 2 idiomas (bueno, y Wheat Wizard ninja obtuvo una respuesta de puntaje 2 de todos modos).
Retina , impresiones
1
Pruébalo en línea!
Esto es esencialmente lo mismo que el programa vacío de Leo.
Pyth , impresiones
2
Pruébalo en línea!
Esto es
repr(2)
así, calcula"2"
cuál se imprime como2
.fuente
26 idiomas, 46 bytes, puntuación: 1.68861953e-28 (0.000000000000000000000000000168861953)
Todos los idiomas son los principales (es decir, en realidad son utilizados por personas en desarrollo) y no existe una solución REPL en ningún idioma. Esta respuesta nunca va a ganar, pero esa no es una razón para no publicarla ...
1. Python 2
Pruébalo en línea!
2. Python 3
Pruébalo en línea!
3. Ruby
Pruébalo en línea!
4. CoffeeScript
Pruébalo en línea!
5. PHP
Pruébalo en línea!
6. Perl 5
Pruébalo en línea!
7. Perl 6
Pruébalo en línea!
8. JavaScript (ES5)
Pruébalo en línea!
9. JavaScript (ES6)
Pruébalo en línea!
10. JavaScript (ES7)
Pruébalo en línea!
11. Lote
No se pudo encontrar un intérprete en línea para este. Intente ejecutar este código en el símbolo del sistema, si está en Windows.
12. Bash
Pruébalo en línea!
13. CSS
Pruébalo en línea!
14. Menos
Pruébalo en línea!
15. Stylus
Pruébalo en línea!
16. TypeScript
Pruébalo en línea!
17. octava
Pruébalo en línea!
18. Swift
Pruébalo en línea!
19. Julia
Pruébalo en línea!
20. Maxima
Pruébalo en línea!
21. Clojure
Pruébalo en línea!
22. Groovy
Pruébalo en línea!
23. CommonLisp
Pruébalo en línea!
24. EmacsLisp
Pruébalo en línea!
25. PicoLisp
Pruébalo en línea!
26. Logo
Pruébalo en línea!
fuente
print(18)//#**alechous: f{}:2345679+ ""enttd*
--
comentarios. Si agregas--
, probablemente también pueda trabajar en al menos un tipo de haskell.12 idiomas, 16 bytes - Puntuación: 0.003
Imprime
1
en 2sableImprimir
10
en 05AB1EReorganizar los números binarios imprime 2-9, 11-12 en:
L = 145297152000 12! = 479001600
Acabo de usar TiO para una lista de idiomas válidos para esto (¿Si todos estos se consideran únicos?). Se eliminaron algunos idiomas duplicados gracias a la entrada del asistente de trigo. Esta respuesta parece bastante baja, aunque siento que tiene potencial.
fuente
JavaScript (ES6), Python 2, Python 3, Japt, 4.735e-15
ES6 (1)
Python 2 (2)
Python 3 (3)
Japt (4)
fuente
4.73508590206e-15
cierto.