Producir un programa que genera un programa ... que genera PPCG


18

Desafío:

Escriba un código que, cuando se ejecute, generará el código fuente de un segundo programa que se puede ejecutar en otro idioma. El segundo programa debe generar el código fuente de un tercer programa que se puede ejecutar en un tercer idioma, etc. El último programa debería salir PPCGcon una nueva línea final opcional.

El ganador será la presentación con la mayoría de los idiomas. La longitud del código del primer programa será el desempate.

Reglas importantes:

  1. Ningún programa puede ser idéntico
  2. Cada idioma solo debe funcionar en uno de los códigos fuente. Debería ser imposible usar el mismo lenguaje en dos lugares de la cadena sin romperlo (ver ejemplos) .
    • Una cadena acortada no es una cadena rota. Si puede usar un idioma en un lugar diferente al previsto y el resultado final sigue siendo PPCG, entonces no es válido
  3. Todas las versiones de un idioma cuentan como idiomas únicos (pero tenga en cuenta la regla número 2)

Ejemplos:

Un envío no válido:

print("""print'disp("PPCG")'""")
  • Python 3: print("""print'disp("PPCG")'""")impresionesprint'disp("PPCG")'
  • Python 2: print'disp("PPCG")'impresionesdisp("PPCG")
  • Octava: disp("PPCG")impresionesPPCG

Esto funciona correctamente, pero: puede ejecutar el primer y el segundo código en Python 2 sin romper la cadena, por lo que esto viola la regla número 2.

Una presentación válida con puntaje 3:

print("""print'disp("PPCG")'""")
  • Python 3: print("""print'disp("PPCG")'""")impresionesprint'disp("PPCG")'
  • Perl: print'disp("PPCG")'impresionesdisp("PPCG")
  • Octava: disp("PPCG")impresionesPPCG

Este es exactamente el mismo código que el ejemplo no válido. La diferencia es que hemos elegido idiomas que se adhieren a la regla número 2: no puede ejecutar el primer código en Perl / Octave, el segundo código en Python 3 / Octave ni el último código en Python 3 / Perl. Esto es válido aunque Python 2 puede ejecutar los dos primeros programas, porque no hemos usado Python 2 como uno de los lenguajes.



Relacionados, posible duplicado. Prácticamente el mismo desafío, pero el sistema de puntuación tiene en cuenta la longitud del código.
ETHproductions

3
Ah sí, realmente no había notado la regla 2. Eso definitivamente hace que no sea un duplicado en mis ojos.
ETHproductions

1
La regla 2 hace que la regla 1 sea redundante.
Pavel

Es lamentable que este desafío tenga la regla de no repetir, lo cual es novedoso, pero TAMBIÉN tiene el "debe terminar con PPCG" en lugar de ser un desafío normal de ouroboros.
Sparr

Respuestas:


12

12 idiomas, 64 bytes

Carbón -> tinylisp -> Python 3 -> /// -> Python 2 -> Perl -> QBasic -> Pip -> V -> Retina -> Pyth -> GolfScript

Carbón

P(q(print('/x/print/x"""x q<?"`i.*":?CHR$(34)+"\'PPCG\'`">"""'*1

Cualquier ejecución de ASCII imprimible es un literal de cadena en Charcoal. puede usarse para impresión multidireccional, pero en este caso simplemente imprime la cadena hacia la derecha.

tinylisp

(q(print('/x/print/x"""x q<?"`i.*":?CHR$(34)+"\'PPCG\'`">"""'*1

Los únicos caracteres reservados en tinylisp (a partir de este escrito) son paréntesis y espacios en blanco. Cualquier otra serie de personajes es una ficha, incluso algo así +"\'PPCG\'`">"""'*1. Los paréntesis definen listas. La q(comilla) incorporada devuelve su argumento sin evaluar, en este caso, la lista anidada (print ('/x/print/x"""x q<?"`i.*":?CHR$ (34) +"\'PPCG\'`">"""'*1)). (Los paréntesis que faltan al final se completan automáticamente).

Python 3

(print ('/x/print/x"""x q<?"`i.*":?CHR$ (34) +"\'PPCG\'`">"""'*1))

Como printes una función en Python 3, podemos envolverla entre paréntesis sin problema. En Python 2, donde es una declaración, este es un error de sintaxis. Desafortunadamente, Perl está bien con los paréntesis, por lo que también lo hacemos *1(repetición de cadenas en Python, conversión a int y multiplicación en Perl).

///

/x/print/x"""x q<?"`i.*":?CHR$ (34) +"'PPCG'`">"""

/x/print/cambia xa printen el resto del programa, que no tiene barras y por lo tanto es de salida con más cambios.

Python 2

print"""print q<?"`i.*":?CHR$ (34) +"'PPCG'`">"""

Sin paréntesis después print, no funciona en Python 3. A Perl no le gustan las comillas triples.

Perl

print q<?"`i.*":?CHR$ (34) +"'PPCG'`">

Las diversas formas de citar una cadena de Perl son útiles y distintas de otros idiomas. Aquí lo usamos q<...>.

QBasic

?"`i.*":?CHR$ (34) +"'PPCG'`"

Un par de declaraciones impresas (abreviadas como ?), que se utilizan CHR$(34)para obtener una cita doble.

Pipa

`i.*
"'PPCG'`

Un patrón literal (regex) literal en backticks.

V

i.*
"'PPCG'

Cambie al modo de inserción, agregue algo de texto.

Retina

.*
"'PPCG'

Une cualquier cosa y reemplázala con la segunda línea.

Pyth

"'PPCG'

Las citas de Pyth no necesitan coincidir (lo que hace que este no sea un programa válido en Pip).

GolfScript

'PPCG'

¿Alguna documentación sobre carbón?
ev3commander

@ ev3commander Tipo de. Consulte la lista de comandos , notas breves sobre la sintaxis (principalmente literales) y la página de códigos . Pero sí, la documentación no es genial. También agregué alguna explicación a la respuesta.
DLosc

ah Me preguntaba porque la P no era en realidad una p ASCII pura, pero supongo que era para que no imprimiera "Pprint ..." no "print ...."
ev3commander

Agregue bash: echo '…'al principio
OldBunny2800

7

Java -> C -> Ruby -> /// -> Python 3 -> Lote -> JavaScript -> BrainFuck (8 idiomas)


Haga clic en los nombres de idioma para el código a través de cada ejecución, excepto Batch, porque no pude encontrar un intérprete en línea para ello.


class Main {public static void main(String[]args){System.out.println("int main(){printf(\"puts \\\"/code/print('echo console.log(\\\\\\\\'-[--->+<]>-----..-[----->+<]>.++++.\\\\\\\\\')')/code\\\"\");}");}}

Explicación:

Java outputs int main(){printf("puts \"/code/print('echo console.log(\\\\'-[--->+<]>-----..-[----->+<]>.++++.\\\\')')/code\"");}
C outputs puts "/code/print('echo console.log(\\'-[--->+<]>-----..-[----->+<]>.++++.\\')')/code"
Ruby outputs /code/print('echo console.log(\'-[--->+<]>-----..-[----->+<]>.++++.\')')/code
/// outputs print('echo console.log(\'-[--->+<]>-----..-[----->+<]>.++++.\')')
Python outputs echo console.log('-[--->+<]>-----..-[----->+<]>.++++.')
Batch outputs console.log('-[--->+<]>-----..-[----->+<]>.++++.')
JavaScript outputs -[--->+<]>-----..-[----->+<]>.++++.
BrainFuck outputs PPCG

El intérprete de Rhino para JavaScript puede ejecutar el programa Python, repitiendo así un lenguaje. Entonces, si esta respuesta es válida o no, depende exactamente de cómo funcionan las reglas sobre los intérpretes.

1
@ ais523 aunque print()funciona en JavaScript, no genera nada y, de hecho, intenta imprimir la página, así que no creo que eso cuente.
TrojanByAccident

3
Si entendí las reglas correctamente, su puntaje debería ser 1, ya que ejecuta el código original en BF ouptut PPCG
Sefa

2
@Sefa Bueno, no exactamente - Creo que hay siempre un byte nulo (ASCII 0) de salida en primer lugar, debido a la .en console.log.
DLosc

1
Lo bueno es que no
utilicé la

6

Java -> BotEngine -> Treehugger -> Loader -> Batch -> Thue -> Microscript II -> BF -> ForceLang -> Javascript, 10 idiomas

Programa Java:

public class ManyLang {
    public static void main(String[]arg){
        int m=120;
        String e="++++++++[>+>++>+++>++++>+++++>++++++>+++++++>++++++++>+++++++++>++++++++++>+++++++++++>++++++++++++>+++++++++++++>++++++++++++++>+++++++++++++++>++++++++++++++++^^^^^^^^^^^^^^^^-]>>>>>>>>>>>>>>.^^^^^^^^^^^^^^>>>>>>>>>>>>>>++.--^^^^^^^^^^^^^^>>>>>>>>>>>>>+.-^^^^^^^^^^^^^>>>>>>>>>>>>>>--.++^^^^^^^^^^^^^^>>>>>>>>>>>>>>>----.++++^^^^^^^^^^^^^^^>>>>>>>>>>>>>--.++^^^^^^^^^^^^^>>>>.^^^^>>>>++.--^^^^>>>>>>>>.^^^^^^^^>>>>>>>>>>>>>---.+++^^^^^^^^^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>>>>>>>>>.^^^^^^^^^^^^^>>>>>>>>>>>>>>-.+^^^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>>>>>>>>+.-^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>>>>---.+++^^^^^^^^>>>>>>>>>>>>>>>>--.++^^^^^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>+++.---^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>--.++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>>--.++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>>---.+++^^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>>--.++^^^^^^>>>>>>--.++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>--.++^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>>--.++^^^^^^>>>>++.--^^^^>>>>.^^^^>>>>>>+++.---^^^^^^>>>>>>++.--^^^^^^>>>>>>----.++++^^^^^^>>>>>>>---.+++^^^^^^^>>>>>>>.^^^^^^^>>>>>>----.++++^^^^^^>>>>>>>---.+++^^^^^^^>>>>>>>.^^^^^^^>>>>>>----.++++^^^^^^>>>>>>+++.---^^^^^^>>>>>>>----.++++^^^^^^^>>>>>>----.++++^^^^^^>>>>>>+++.---^^^^^^>>>>>>>----.++++^^^^^^^>++.--^>>>>>>>>>>>>>>.^^^^^^^^^^^^^^>>>>>>>>>>>>>>++.--^^^^^^^^^^^^^^>>>>>>>>>>>>>+.-^^^^^^^^^^^^^>>>>>>>>>>>>>>--.++^^^^^^^^^^^^^^>>>>>>>>>>>>>>>----.++++^^^^^^^^^^^^^^^>>>>>>>>>>>>>--.++^^^^^^^^^^^^^>>>>.^^^^>>>>++.--^^^^>>>>>>>>.^^^^^^^^>>>>>>>>>>>>>---.+++^^^^^^^^^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>>>>>>>>>.^^^^^^^^^^^^^>>>>>>>>>>>>>>-.+^^^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>>>>---.+++^^^^^^^^>>>>++.--^^^^>>>>.^^^^>>>>>>+++.---^^^^^^>>>>>>++.--^^^^^^>>>>>>----.++++^^^^^^>>>>>>>---.+++^^^^^^^>>>>>>>.^^^^^^^>>>>>>----.++++^^^^^^>>>>>>>---.+++^^^^^^^>>>>>>>.^^^^^^^>++.--^>>>>>>>>>>>>>>.^^^^^^^^^^^^^^>>>>>>>>>>>>>>++.--^^^^^^^^^^^^^^>>>>>>>>>>>>>+.-^^^^^^^^^^^^^>>>>>>>>>>>>>>--.++^^^^^^^^^^^^^^>>>>>>>>>>>>>>>----.++++^^^^^^^^^^^^^^^>>>>>>>>>>>>>--.++^^^^^^^^^^^^^>>>>.^^^^>>>>++.--^^^^>>>>>>>>.^^^^^^^^>>>>>>>>>>>>>---.+++^^^^^^^^^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>>>>>>>>>.^^^^^^^^^^^^^>>>>>>>>>>>>>>-.+^^^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>++.--^^^^>>>>.^^^^>>>>>>+++.---^^^^^^>>>>>>++.--^^^^^^>>>>>>----.++++^^^^^^>>>>>>>+.-^^^^^^^>>>>>>>-.+^^^^^^^.";
        for(int i=1;i<e.length();i++){
            if(i==1){
                System.out.print("v");
            }
            else if(i%m==1&&i>1){
                System.out.println();
                System.out.println(">eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev");
                System.out.println("v                                                                                                                        <");
                System.out.print(" ");
            }
            System.out.print(e.charAt(i-1));
        }
        System.out.println();System.out.print(">eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeP");
    }
}

Programa BotEngine:

v++++++++[>+>++>+++>++++>+++++>++++++>+++++++>++++++++>+++++++++>++++++++++>+++++++++++>++++++++++++>+++++++++++++>++++++
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ++++++++>+++++++++++++++>++++++++++++++++^^^^^^^^^^^^^^^^-]>>>>>>>>>>>>>>.^^^^^^^^^^^^^^>>>>>>>>>>>>>>++.--^^^^^^^^^^^^^
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ^>>>>>>>>>>>>>+.-^^^^^^^^^^^^^>>>>>>>>>>>>>>--.++^^^^^^^^^^^^^^>>>>>>>>>>>>>>>----.++++^^^^^^^^^^^^^^^>>>>>>>>>>>>>--.++
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ^^^^^^^^^^^^^>>>>.^^^^>>>>++.--^^^^>>>>>>>>.^^^^^^^^>>>>>>>>>>>>>---.+++^^^^^^^^^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >>>>>>>>>.^^^^^^^^^^^^^>>>>>>>>>>>>>>-.+^^^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>>>>>>>>+.-^^^
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>>>>---.+++
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ^^^^^^^^>>>>>>>>>>>>>>>>--.++^^^^^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>+++.---^^^^^>>>>>>>>>>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>>>----.
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >--.++^^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.-
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 --^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>--.++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>--.++^^^^^^>>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >+++.---^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>>--.++^^^^^^>>>>>>---.+++
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>-
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 -.++^^^^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>>---.+++^
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.++
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 +^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>++
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 +.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 .---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ---^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 +++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ^^^>>>>>>---.+++^^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >>--.++^^^^^^>>>>>>--.++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.--
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 -^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>>---.++
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 +^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ^>>>>>>--.++^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>>--.++^^^^^^>>>>++.--^^^^>>>>.^^^^>>>>>>+++.---^^
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ^^^^>>>>>>++.--^^^^^^>>>>>>----.++++^^^^^^>>>>>>>---.+++^^^^^^^>>>>>>>.^^^^^^^>>>>>>----.++++^^^^^^>>>>>>>---.+++^^^^^^^
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >>>>>>>.^^^^^^^>>>>>>----.++++^^^^^^>>>>>>+++.---^^^^^^>>>>>>>----.++++^^^^^^^>>>>>>----.++++^^^^^^>>>>>>+++.---^^^^^^>>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >>>>>----.++++^^^^^^^>++.--^>>>>>>>>>>>>>>.^^^^^^^^^^^^^^>>>>>>>>>>>>>>++.--^^^^^^^^^^^^^^>>>>>>>>>>>>>+.-^^^^^^^^^^^^^>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >>>>>>>>>>>>>--.++^^^^^^^^^^^^^^>>>>>>>>>>>>>>>----.++++^^^^^^^^^^^^^^^>>>>>>>>>>>>>--.++^^^^^^^^^^^^^>>>>.^^^^>>>>++.--
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ^^^^>>>>>>>>.^^^^^^^^>>>>>>>>>>>>>---.+++^^^^^^^^^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>>>>>>>>>.^^^^^^^^^^^^^>>>>>>>>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >>>>>>-.+^^^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 >>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>>>>---.+++^^^^^^^^>>>>++.--^^^^>>>>.^^^^>>>>>>+++.---^^^^^^>>>>>>++.
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 --^^^^^^>>>>>>----.++++^^^^^^>>>>>>>---.+++^^^^^^^>>>>>>>.^^^^^^^>>>>>>----.++++^^^^^^>>>>>>>---.+++^^^^^^^>>>>>>>.^^^^^
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ^^>++.--^>>>>>>>>>>>>>>.^^^^^^^^^^^^^^>>>>>>>>>>>>>>++.--^^^^^^^^^^^^^^>>>>>>>>>>>>>+.-^^^^^^^^^^^^^>>>>>>>>>>>>>>--.++^
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ^^^^^^^^^^^^^>>>>>>>>>>>>>>>----.++++^^^^^^^^^^^^^^^>>>>>>>>>>>>>--.++^^^^^^^^^^^^^>>>>.^^^^>>>>++.--^^^^>>>>>>>>.^^^^^^
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ^^>>>>>>>>>>>>>---.+++^^^^^^^^^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>>>>>>>>>.^^^^^^^^^^^^^>>>>>>>>>>>>>>-.+^^^^^^^^^^
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>++.--^^^^>>>>.^^
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeev
v                                                                                                                        <
 ^^>>>>>>+++.---^^^^^^>>>>>>++.--^^^^^^>>>>>>----.++++^^^^^^>>>>>>>+.-^^^^^^^>>>>>>>-.+^^^^^^^
>eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeP

Programa Treehugger:

++++++++[>+>++>+++>++++>+++++>++++++>+++++++>++++++++>+++++++++>++++++++++>+++++++++++>++++++++++++>+++++++++++++>++++++++++++++>+++++++++++++++>++++++++++++++++^^^^^^^^^^^^^^^^-]>>>>>>>>>>>>>>.^^^^^^^^^^^^^^>>>>>>>>>>>>>>++.--^^^^^^^^^^^^^^>>>>>>>>>>>>>+.-^^^^^^^^^^^^^>>>>>>>>>>>>>>--.++^^^^^^^^^^^^^^>>>>>>>>>>>>>>>----.++++^^^^^^^^^^^^^^^>>>>>>>>>>>>>--.++^^^^^^^^^^^^^>>>>.^^^^>>>>++.--^^^^>>>>>>>>.^^^^^^^^>>>>>>>>>>>>>---.+++^^^^^^^^^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>>>>>>>>>.^^^^^^^^^^^^^>>>>>>>>>>>>>>-.+^^^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>>>>>>>>+.-^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>>>>---.+++^^^^^^^^>>>>>>>>>>>>>>>>--.++^^^^^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>+++.---^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>--.++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>>--.++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>>---.+++^^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>>--.++^^^^^^>>>>>>--.++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>>>>>>>+++.---^^^^^^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>>>>----.++++^^^^^^^^>>>>>>>>>>>>---.+++^^^^^^^^^^^^>>>>>>>>--.++^^^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>+++.---^^^^^>>>>>+++.---^^^^^>>>>>>--.++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>---.+++^^^^^^>>>>>>--.++^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>>--.++^^^^^^>>>>++.--^^^^>>>>.^^^^>>>>>>+++.---^^^^^^>>>>>>++.--^^^^^^>>>>>>----.++++^^^^^^>>>>>>>---.+++^^^^^^^>>>>>>>.^^^^^^^>>>>>>----.++++^^^^^^>>>>>>>---.+++^^^^^^^>>>>>>>.^^^^^^^>>>>>>----.++++^^^^^^>>>>>>+++.---^^^^^^>>>>>>>----.++++^^^^^^^>>>>>>----.++++^^^^^^>>>>>>+++.---^^^^^^>>>>>>>----.++++^^^^^^^>++.--^>>>>>>>>>>>>>>.^^^^^^^^^^^^^^>>>>>>>>>>>>>>++.--^^^^^^^^^^^^^^>>>>>>>>>>>>>+.-^^^^^^^^^^^^^>>>>>>>>>>>>>>--.++^^^^^^^^^^^^^^>>>>>>>>>>>>>>>----.++++^^^^^^^^^^^^^^^>>>>>>>>>>>>>--.++^^^^^^^^^^^^^>>>>.^^^^>>>>++.--^^^^>>>>>>>>.^^^^^^^^>>>>>>>>>>>>>---.+++^^^^^^^^^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>>>>>>>>>.^^^^^^^^^^^^^>>>>>>>>>>>>>>-.+^^^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>>>>---.+++^^^^^^^^>>>>++.--^^^^>>>>.^^^^>>>>>>+++.---^^^^^^>>>>>>++.--^^^^^^>>>>>>----.++++^^^^^^>>>>>>>---.+++^^^^^^^>>>>>>>.^^^^^^^>>>>>>----.++++^^^^^^>>>>>>>---.+++^^^^^^^>>>>>>>.^^^^^^^>++.--^>>>>>>>>>>>>>>.^^^^^^^^^^^^^^>>>>>>>>>>>>>>++.--^^^^^^^^^^^^^^>>>>>>>>>>>>>+.-^^^^^^^^^^^^^>>>>>>>>>>>>>>--.++^^^^^^^^^^^^^^>>>>>>>>>>>>>>>----.++++^^^^^^^^^^^^^^^>>>>>>>>>>>>>--.++^^^^^^^^^^^^^>>>>.^^^^>>>>++.--^^^^>>>>>>>>.^^^^^^^^>>>>>>>>>>>>>---.+++^^^^^^^^^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>>>>>>>>>.^^^^^^^^^^^^^>>>>>>>>>>>>>>-.+^^^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>>---.+++^^^^^>>>>>>>>>>>>+++.---^^^^^^^^^^^^>>>>++.--^^^^>>>>.^^^^>>>>>>+++.---^^^^^^>>>>>>++.--^^^^^^>>>>>>----.++++^^^^^^>>>>>>>+.-^^^^^^^>>>>>>>-.+^^^^^^^.

Programa de cargador:

printf "@echo%ca%c%c=~%c+[----->+++<]>++.++++++.[->+++++<]>+++.[--->++<]>+++.-----.---------.+++++++++++.+++[->+++<]>.--[--->+<]>-.++.+[--->+<]>.+++++++++++.-------.+++++++++++++.++.+[--->+<]>+.-.+[->++<]>..-[----->+<]>.++++.+[-->+<]>+++.++.-------.%c." 32,58,58,34,34
printf "@echo%c%c%c=" 32,58,58
printf "@echo%c%c" 32,97

Programa por lotes:

@echo a::=~"+[----->+++<]>++.++++++.[->+++++<]>+++.[--->++<]>+++.-----.---------.+++++++++++.+++[->+++<]>.--[--->+<]>-.++.+[--->+<]>.+++++++++++.-------.+++++++++++++.++.+[--->+<]>+.-.+[->++<]>..-[----->+<]>.++++.+[-->+<]>+++.++.-------.".
@echo ::=
@echo a

Jue programa:

a::=~"+[----->+++<]>++.++++++.[->+++++<]>+++.[--->++<]>+++.-----.---------.+++++++++++.+++[->+++<]>.--[--->+<]>-.++.+[--->+<]>.+++++++++++.-------.+++++++++++++.++.+[--->+<]>+.-.+[->++<]>..-[----->+<]>.++++.+[-->+<]>+++.++.-------.".
::=
a

Programa Microscript II:

"+[----->+++<]>++.++++++.[->+++++<]>+++.[--->++<]>+++.-----.---------.+++++++++++.+++[->+++<]>.--[--->+<]>-.++.+[--->+<]>.+++++++++++.-------.+++++++++++++.++.+[--->+<]>+.-.+[->++<]>..-[----->+<]>.++++.+[-->+<]>+++.++.-------.".

Programa BF:

+[----->+++<]>++.++++++.[->+++++<]>+++.[--->++<]>+++.-----.---------.+++++++++++.+++[->+++<]>.--[--->+<]>-.++.+[--->+<]>.+++++++++++.-------.+++++++++++++.++.+[--->+<]>+.-.+[->++<]>..-[----->+<]>.++++.+[-->+<]>+++.++.-------.

Programa ForceLang:

io.write "alert('PPCG')"

Programa Javascript:

alert('PPCG')

¿Puedes enumerar los pasos?
OldBunny2800

@ OldBunny2800 Listo.
SuperJedi224

4

11 idiomas, 536 bytes

Bash -> Python 3 -> Ir -> Lua -> Rust -> Java -> C99 -> Python 2 -> JavaScript -> Ruby -> Lote

Golpetazo:

e="echo -n "
p(){
eval "for i in {1..$1}
do
$e'\'
done"
}
$e'import sys;print("package main\nimport \"fmt\"\nfunc main() {fmt.Printf(\"if 1 == 1 then print(\\\"fn main() {let s='
p 7
$e'"public class Main{public static void main(String[] args){System.out.println('
p 15
$e'"#include <stdio.h>'
p 16
$e'nint main() {printf('
p 31
$e'"print '
p 63
$e"\"alert('puts "
p 128
$e"'@echo PPCG"
p 128
$e"'');"
p 63
$e'"'
p 31
$e'");}'
p 15
$e'");}}\\\\\\\";println!(\\\\\\\"{}\\\\\\\", s);}\\\") end\")}") if sys.version_info[0]==3 else exit()'

La pfunción reduce el tamaño del código en 497 bytes en comparación con escribir todas las barras invertidas manualmente.

Python 3:

import sys;print("package main\nimport \"fmt\"\nfunc main() {fmt.Printf(\"if 1 == 1 then print(\\\"fn main() {let s=\\\\\\\"public class Main{public static void main(String[] args){System.out.println(\\\\\\\\\\\\\\\"#include <stdio.h>\\\\\\\\\\\\\\\\nint main() {printf(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"print \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"alert('puts \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'@echo PPCG\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'');\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\");}\\\\\\\\\\\\\\\");}}\\\\\\\";println!(\\\\\\\"{}\\\\\\\", s);}\\\") end\")}") if sys.version_info[0]==3 else exit()

La diferenciación obligatoria de Python 2/3.

Vamos:

package main
import "fmt"
func main() {fmt.Printf("if 1 == 1 then print(\"fn main() {let s=\\\"public class Main{public static void main(String[] args){System.out.println(\\\\\\\"#include <stdio.h>\\\\\\\\nint main() {printf(\\\\\\\\\\\\\\\"print \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"alert('puts \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'@echo PPCG\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'');\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\");}\\\\\\\");}}\\\";println!(\\\"{}\\\", s);}\") end")}

Lua

if 1 == 1 then print("fn main() {let s=\"public class Main{public static void main(String[] args){System.out.println(\\\"#include <stdio.h>\\\\nint main() {printf(\\\\\\\"print \\\\\\\\\\\\\\\"alert('puts \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'@echo PPCG\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'');\\\\\\\\\\\\\\\"\\\\\\\");}\\\");}}\";println!(\"{}\", s);}") end

El uso if 1 == 1 thenevita la compatibilidad con Python.

Oxido:

fn main() {let s="public class Main{public static void main(String[] args){System.out.println(\"#include <stdio.h>\\nint main() {printf(\\\"print \\\\\\\"alert('puts \\\\\\\\\\\\\\\\'@echo PPCG\\\\\\\\\\\\\\\\'');\\\\\\\"\\\");}\");}}";println!("{}", s);}

Java:

public class Main{public static void main(String[] args){System.out.println("#include <stdio.h>\nint main() {printf(\"print \\\"alert('puts \\\\\\\\'@echo PPCG\\\\\\\\'');\\\"\");}");}}

C99:

#include <stdio.h>
int main() {printf("print \"alert('puts \\\\'@echo PPCG\\\\'');\"");}

Python 2:

print "alert('puts \\'@echo PPCG\\'');"

JavaScript:

alert('puts \'@echo PPCG\'');

Rubí:

puts '@echo PPCG'

Lote:

@echo PPCG

¡Bienvenido a PPCG y buena primera respuesta!
Kritixi Lithos

4

Befunge (5 versiones)

Comenzamos con la versión más reciente, Befunge-109 (ejecutar con cfunge -s 109):

1k!!k@"1k!k@#;>@,k>'"'""r;@;"'"::''\"@_,#:>"'""\''::"'":''\"1j#@0"'""\'':"'":''\"::''\"'"::''\"GCPP"'""\'':"'":''\"::''\"'"::''\">:#,_@"'""\''::"'":''\"@j1A"'"::''\">:#,_@"'"";@r"'qk,@

Que genera el siguiente código Befunge-98Pruébelo en línea! ):

r@;"@_,#:>"'""A1j@"'"::''\"@_,#:>"'""\''::"'":''\"PPCG"'""\''::"'":''\"0@#j1"'"::''\">:#,_@"'"";@;r"'>k,@>;#@k!k1

Que genera el siguiente código Befunge-97Pruébelo en línea! ):

r;@;"@_,#:>"'""1j#@0"'"::''\"GCPP"'"::''\">:#,_@"'""@j1A">:#,_@

Que genera el siguiente código Befunge-96Pruébelo en línea! ):

A1j@"@_,#:>"'""PPCG"'""0@#j1">:#,_@

Lo que genera el siguiente Befunge-93Pruébelo en línea! ):

1j#@0"GCPP">:#,_@

Que da salida a la cadena: PPCG

Cada programa solo se ejecutará en la versión de Befunge a la que apunta. Si intenta ejecutarlos en otra versión, saldrán inmediatamente sin generar nada.

Gracias a Dennis , casi todas las versiones de Befunge ahora están disponibles en línea en TIO . La única excepción es Befunge-109, para lo cual necesitará cfunge , que se puede encontrar aquí .


3

11 idiomas (102 bytes)

Voy a agregar más pronto.

Jelly -> Ruby ->> <> -> /// -> Lote -> Python 3 -> JavaScript -> J -> FOG -> Jolf -> Apilado

“puts <<q
/!/@ECHO print("""console.log(`'"a Lq5(80::13-:4+)#:out"X'`)""")/!~
/0v
  >:1+$0g:'~'=?;o
q

Salidas Jelly (¡ Pruébelo en línea! ):

puts <<q
/!/@ECHO print("""console.log(`'"a Lq5(80::13-:4+)#:out"X'`)""")/!~
/0v
  >:1+$0g:'~'=?;o
q

Resultados de Ruby (¡ Pruébelo en línea! ):

/!/@ECHO print("""console.log(`'"a Lq5(80::13-:4+)#:out"X'`)""")/!~
/0v
  >:1+$0g:'~'=?;o

> <> (use este intérprete; genera espacios en lugar de bytes nulos para espacios) salidas:

/!/@ECHO print("""console.log(`'"a Lq5(80::13-:4+)#:out"X'`)""")/!

/// (¡ Pruébelo en línea! ) Salidas:

@ECHO print("""console.log(`'"a Lq5(80::13-:4+)#:out"X'`)""")

Salidas por lotes:

print("""console.log(`'"a Lq5(80::13-:4+)#:out"X'`)""")

Python 3 (¡ Pruébelo en línea! ) Salidas:

console.log(`'"a Lq5(80::13-:4+)#:out"X'`)

Salidas de JavaScript (¡ Pruébelo en línea! ):

'"a Lq5(80::13-:4+)#:out"X'

J (¡ Pruébelo en línea! Solo una aproximación) produce:

"a Lq5(80::13-:4+)#:out"X

Impresiones de niebla :

a Lq5(80::13-:4+)#:out

Salidas de Jolf (¡ Pruébalo aquí! ):

(80::13-:4+)#:out

Finalmente, los resultados apilados (¡ Pruébelo aquí! ):

PPCG

Sería trivial agregar Java.
Addison Crump

@VoteToClose No conozco Java, pero apuesto a que implica mucho escape.
Conor O'Brien el


3

Lote de Windows -> Powershell -> Ruby -> Python 3 -> JavaScript -> SQL -> CJam : 7 idiomas

Lote de Windows

@echo @"
@echo puts <<x
@echo print("""alert(`prompt '"PPCG"'`)""")
@echo x
@echo "@

Potencia Shell

@"
puts <<x
print("""alert(`prompt '"PPCG"'`)""")
x
"@

Rubí

puts <<x
print("""alert(`prompt '"PPCG"'`)""")
x

Python 3

print("""alert(`prompt '"PPCG"'`)""")

JavaScript

alert(`prompt '"PPCG"'`)

SQL

prompt '"PPCG"'

CJam

"PPCG"

1
Creo que (en el título) te refieres a Batch , no a Bytch .
FlipTack

2

/// a Jelly a Javascript a MS-SQL a QBasic a QBIC, 39 bytes, 6 idiomas

/b/“a/blert("select'PRINT\"?@PPCG`\"'")

Explicación:

///  Replaces the one 'b' with '“a', returns 
“alert("select'PRINT\"?@PPCG`\"'")

Jelly just sees everything as a string literal and prints it (shamelessly stole this trick from @ConoroBrien)
alert("select'PRINT\"?@PPCG`\"'")

Javascript posts this in a dialog window:
select'PRINT"?@PPCG`"'

MSSQL then selects:
PRINT"?@PPCG`"'")

QBasic puts this on the screen:
?@PPCG`

QBIC then prints 'PPCG'

QBIC y QBasic tienen muchas similitudes. Sin embargo, estas líneas de código no son compatibles entre sí: QBasic acepta la ?abreviatura de PRINT, pero no sabe qué hacer con el @y el backtick. QBIC interpretará la PRINTlínea como una referencia a 5 variables de cadena diferentes y P$R$I$N$T$no es una declaración válida.


2
Me encanta el blert;-)
ETHproductions

2

9 idiomas: Procesamiento -> Java -> C -> Python 3 -> JavaScript (ES6) -> Octave -> Bash -> sed -> V, 160 bytes

print("class A{public static void main(String[]a){System.out.print(\"main(){printf(\\\"print(\\\\\\\"alert`disp('echo s/.*/iPPCG/')`\\\\\\\")#\\\");}\");}}");//

En este momento, mi objetivo es encontrar y agregar idiomas donde no necesito escapar de citas y demás.

Procesando salidas (tenga en cuenta que el programa Java no se ejecuta en Procesamiento y viceversa)

class A{public static void main(String[]a){System.out.print("main(){printf(\"print(\\\"alert`disp('echo s/.*/iPPCG/')`\\\")#\");}");}}

Salidas de Java:

main(){printf("print(\"alert`disp('echo s/.*/iPPCG/')`\")#");}

Salidas C:

print("alert`disp('echo s/.*/iPPCG/')`")#

Python 3 (tenga en cuenta que el programa Python no funcionará en el procesamiento debido a los comentarios y viceversa) salidas:

alert`disp('echo s/.*/iPPCG/')`

Salidas de JavaScript:

disp('echo s/.*/iPPCG/')

Salidas de octava:

echo s/.*/iPPCG/

Salidas de Bash:

s/.*/iPPCG/

salidas sed:

iPPCG  

Salidas V:

PPCG


1

Python 2 -> Bash -> MySQL -> PHP

int score = 4;


print """echo "SELECT 'printf(\\"PPCG\\");';\""""

Aunque esto no es código golf, el bytecount es 49.


Salidas de Python:

echo "SELECT 'printf(\"PPCG\");';"

Salidas de Bash:

SELECT 'printf("PPCG");';

Salidas MySQL:

printf("PPCG");

Salidas PHP:

PPCG

Ahí tienes!


1

Nuevo en codegolf, solo tratando de hacer una entrada. No trato de ganar. ¿Lo estoy haciendo bien?

Bash -> Lote - 23 bytes

printf "echo PPCG">.bat

Esto generará "echo PPCG" en un archivo .bat que se puede ejecutar en Windows.


Hola y bienvenidos al sitio. Esta respuesta parece perfectamente válida, pero recomendaría poner su puntaje (2) en su título. Esta pregunta es una pregunta de código de golf , por lo que no es necesario incluir su recuento de bytes a menos que lo desee.
Wheat Wizard

Creo que tal vez el mago del trigo olvidó un "no" allí. Esto no es código golf. Además, bienvenido 😊
Stewie Griffin

@StewieGriffin "La longitud del código del primer programa será el desempate". hmm ...
Erik the Outgolfer

Estoy de acuerdo, pero entonces el comentario del asistente no tiene sentido: esta pregunta es una pregunta de código de golf, por lo que no es necesario incluir el recuento de bytes .
Stewie Griffin
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.