(basierend auf diesem Beitrag und der anschließenden Diskussion im Chat - auch vielen Dank an Dennis für TIO!)
Die Herausforderung
Wählen Sie eine Sprache aus, die derzeit auf der TryItOnline-Website verfügbar ist , z. B. PowerShell . Schreiben Sie Code in dieser Sprache auf dieser Seite, ohne dass Eingaben erforderlich sind. Wenn Sie auf die Schaltfläche Ausführen klicken, entspricht die Ausgabe auf dieser Seite genau der im Feld "Nur URL" beim Speichern / Speichern angegebenen Klicken Sie stattdessen auf die Schaltfläche.
Angenommen, für ein fiktives Beispiel aaa
war dies der Code für eine Lösung in PowerShell. Dann sollte das Ergebnis des Klickens auf Ausführen mit aktiviertem aaa
Code https://tio.run/#powershell
ausgegeben werden. Dies https://tio.run/##K8gvTy0qzkjNyfn/PzEx8f9/AA
ist auch das Feld "Nur URL", wenn auf die Schaltfläche Speichern / Speichern geklickt wird.
Wertung
Die resultierende URL ist Ihr Beitrag zu dieser Herausforderung. Der Gewinner ist die kürzeste URL, gemessen in Bytes. Im obigen Beispiel ist die URL https://tio.run/##K8gvTy0qzkjNyfn/PzEx8f9/AA
die Übermittlung an die Challenge mit 44 Bytes . Die kürzeste URL, die den Rest dieser Herausforderung erfüllt, gewinnt die Herausforderung und verdient Brownie-Punkte (Punkte nicht einlösbar). Unter der Voraussetzung, dass eine bestimmte Mindestlänge möglich ist, gewinnt die frühere Einreichung, wenn zwei Einreichungen gleich lang sind.
URL-Generierung
Dies ist der Start des URL-Generierungsalgorithmus im Repository. Sie können sehen, wie der Hauptcodebereich eingenommen wird, ob zusätzliche Elemente angehängt werden, die Zeichenfolge entleert und Base64 konvertiert und dann ##
vorangestellt wird usw. Ich werde hier nicht näher darauf eingehen. Teil der Herausforderung ist es, zu analysieren und zu verstehen, wie die URLs generiert werden, um potenzielle Macken in diesem Algorithmus auszunutzen.
Regeln / Erläuterungen
- Der eigentliche Code sollte keine Eingabe annehmen und nur die Quine-URL als Ausgabe erzeugen.
- Das heißt , die nur Textfelder , die ausgefüllt werden müssen , wenn sie in der URL zu klicken , sind dieCode
,Header
,Footer
oder „Compiler - Flag“ Felder entspricht; Die FelderInput
undArguments
sind verboten und müssen leer / unbenutzt bleiben. Klicken Sie auf die Schaltfläche Ausführen , um nur dasOutput
Feld zu ändern . Bei dieser Herausforderung wird dasDebug
Feld in allen Situationen ignoriert. - Für den Code gelten, soweit möglich, die üblichen Quine-Regeln (der Code kann beispielsweise keinen eigenen Quellcode über lesen
.code.tio
). - Bitte fügen Sie Ihrer Einreichung eine Beschreibung der Funktionsweise des Codes bei.
- Das Übermitteln einer "betrügerischen" Quine durch Übermitteln einer Git-Pull-Anforderung an das TIO-Repository zum Erstellen einer "Trick" -URL oder -Verknüpfung oder dergleichen ist nicht zulässig.
- Ebenso ist das Senden einer Pull-Anforderung zum Aktualisieren einer bestimmten Sprache zur Erstellung einer "Trick" -URL nicht zulässig.
- Bitte seien Sie nett zu Dennis 'Servern und missbrauchen Sie sie nicht und versuchen Sie keine Exploits für diese Herausforderung.
https://tio.run/##a+a
die zu einem Programm verknüpft , dass die Ergebnisse https://tio.run/##a+a
, ist es gültig , auch den Link zäh erzeugten saveState
gewesen wärehttps://tio.run/##a@a