Problem"
Zdefiniuj funkcję log(lub inną trzyliterową nazwę), która po wywołaniu będzie logować / drukować / pisać (niezależnie od tego, jaki jest domyślny dla danego języka) zarówno instrukcję (jako źródło), jak i pierwszy argument. Innymi słowy:
i=777
j=333
log(i) //outputs: "log(i) 777"
log(i+j+1) //outputs: "log(i+j+1) 1111"
Dla wszystkich praktycznych celów wynik i: 777byłby wystarczający, ale w niektórych językach istnieją do tego bardzo specyficzne biblioteki refleksji, co nie byłoby wyzwaniem, więc cała instrukcja powinna zostać wypisana.
Inspiracja
Inspiracją do tego byłem ja i inny programista dyskutujący o tym, jak irytujące jest to, że często (przy złych debuggerach) piszesz takie rzeczy console.log("i:", i), a następnie stworzyliśmy (dość zwariowane) rozwiązanie javascript (tylko węzeł) (generuje ono i: 777raczej niż całą linię źródło), która była zaskakująco długa i przypominała mi o kodzie golfowym i sprawiła, że zastanawiałem się, o ile lepsze byłyby inne języki (zwłaszcza golfowe).
Bonusy
-10% : Brak odczytu pliku (poza kompilatorem)
PS. To jest moje pierwsze „pytanie” tutaj, więc możesz wskazać wszelkie błędy, które popełniłem.
help/on-topic(wspomniano, ale nie uważałem za warte sprawdzenia sposobu, w jaki tam został opisany).