Polyglotte de quine cyclique durcie par rayonnement

10

Défi

Écrivez deux programmes qui:

  • exécuté dans deux langages de programmation différents.
    • Il peut ne pas s'agir de deux versions d'une même langue.
  • lorsqu'un programme est exécuté, il génère le deuxième programme et vice versa.
  • Les deux programmes doivent être différents (pas de polyglottes).

Voici le hic cependant:

  • Les programmes doivent être durcis aux radiations.
    • Cela signifie que lorsqu'un ensemble de n (définis ci-dessous) est supprimé de l'un des deux programmes, leur fonctionnalité n'est pas affectée.
    • n est défini comme le nombre de caractères qui peuvent être omis sans que la fonctionnalité de votre programme soit affectée.
    • n doit être au moins égal à1 .

Règles

  • Les failles standard ne sont pas autorisées.
  • Vos programmes doivent être des quines cycliques appropriées. Ils ne peuvent pas lire leur propre code source.
  • La notation est effectuée comme suit:
    • S1+S2n
    • S1S2
    • n
  • C'est un , le score le plus bas gagne.

Récompense

Comme ce défi est difficile à répondre, je donnerai une prime à la première personne à répondre.

dkudriavtsev
la source
Les programmes doivent-ils être des quines appropriés?
Mego
@Mego Whoops - oublié de le mentionner. Oui.
dkudriavtsev
Eh bien, "quine approprié" n'est pas le bon terme car ce ne sont pas des quines, mais il semble que vous ayez compris ce que je voulais dire.
Mego
10
Personnellement, je ne pense pas que cela ajoute vraiment beaucoup aux défis quine que nous avons déjà rencontrés; les deux catégories ont déjà été regroupées dans tellement de combinaisons qu'il est extrêmement difficile de trouver une combinaison vraiment originale.
ETHproductions
2
Vous devriez probablement ajouter une sorte de récompense pour avoir répondu à cela. J'ai l'impression qu'il est trop difficile pour beaucoup de gens de vouloir essayer. J'ai vu que cela n'avait pas de réponses et je pensais "ooh un défi quine, j'adore ceux-là!" mais ensuite j'ai lu TOUTES LES RÈGLES et cela m'a complètement découragé.
MD XF

Réponses:

3

Gol> <> et > <> , (117 octets + 117 octets) / 1 = 234

Gol> <>

\\<<'3d*}}}}~}:r0<}!o::! ?>~~a<o>Hr~Kl a}}:?%2l}}}ss2"<<\\
\\<<'3d*}}}}~}:r0<}!o::! ?>~~a<o>Hr~Kl a}}:?%2l}}}ss2"<<\\

Essayez-le en ligne!

> <>

\\<<"2ss}}}l2%?:}}a lK~rH>o<a~~>? !::o!}<0r:}~}}}}*d3'<<\\
\\<<"2ss}}}l2%?:}}a lK~rH>o<a~~>? !::o!}<0r:}~}}}}*d3'<<\\

Essayez-le en ligne!

Vérification!

Ces deux programmes sont les mêmes, juste inversés. Ils suivent tous les deux la même structure générale de code.

Explication (Gol> <> en haut,> <> en bas)

\\<<                           <<\\  Transition to the copy of the code that is not radiated
\\<<                           <<\\

                              "    Wrapping string literal over the rest of the code
                              '

                           ss2     Push the string character
                           *3d

                        }}}        Rotate the "<<\" to the correct end of the stack
                        }}}

                 }}:?%2l           Use the extra \ to replace a possible irradiated copy
                    }~}:

       ~     lK                    Duplicate the code
        ~~>? !::o!}<0r             Print a copy of the code in reverse

                a                  Push a newline
       a
    Hr                             Reverse, print the rest of stack and terminate
    >o<                            Print the rest of the stack and terminate
Jo King
la source