Das Problem"
Definieren Sie eine Funktion log(oder einen anderen 3-Buchstaben-Namen), die beim Aufruf sowohl die Anweisung (als Quelle) als auch das erste Argument protokolliert / druckt / schreibt (was auch immer die Standardeinstellung für die betreffende Sprache ist). Mit anderen Worten:
i=777
j=333
log(i) //outputs: "log(i) 777"
log(i+j+1) //outputs: "log(i+j+1) 1111"
Für alle praktischen Zwecke würde die Ausgabe i: 777ausreichen, aber in einigen Sprachen gibt es dafür sehr spezielle Reflektionsbibliotheken, und das wäre keine Herausforderung, weshalb die gesamte Anweisung ausgegeben werden sollte.
Inspiration
Die Inspiration dafür war, dass ich und ein anderer Programmierer darüber diskutierten, wie irritierend es ist, dass Sie oft (mit schlechten Debuggern) Dinge schreiben console.log("i:", i), als nächstes haben wir eine (ziemlich verrückte) Javascript-Lösung (nur Knoten) erstellt (sie gibt i: 777eher als die gesamte Zeile aus) Quelle), die überraschend lang war und mich an Codegolf erinnerte und mich fragen ließ, wie viel besser andere (insbesondere Code-Golf) Sprachen abschneiden würden.
Boni
-10% : Kein Lesen von Dateien (außerhalb des Compilers)
PS. Dies ist meine erste "Frage" hier, also zögern Sie nicht, auf Fehler hinzuweisen, die ich gemacht habe.
help/on-topic(es wird erwähnt, aber ich fand es nicht wert, die Beschreibung dort zu überprüfen).