Passa questo come primo argomento:
C=("").char;_G[C(112,114,105,110,116)](C(72,101,108,108,111,44,32,87,111,114,108,100,33))
Supponendo che il codice originale sia in un file tehtmi.lua
, esegui (in bash o una shell simile):
lua tehtmi.lua 'C=("").char;_G[C(112,114,105,110,116)](C(72,101,108,108,111,44,32,87,111,114,108,100,33))'
Funziona anche su Lua 5.3, che è ciò che utilizza TIO, quindi perché non provarlo online ? Non ho testato un'implementazione che utilizza il core "PUC-Rio's Lua 5.1" (perché non riesco davvero a trovare alcuna informazione), ma probabilmente la mia soluzione funziona anche lì.
Come?
Esegue il primo argomento come codice, ma solo se contiene meno di 5 caratteri minuscoli.
Il trucco è correre print("Hello, World!")
. Un altro modo in cui questo può essere eseguito è l'utilizzo_G["print"]("Hello, World!")
, che utilizza solo stringhe.
Ma non possiamo usare la stringa direttamente a causa della limitazione del conteggio in minuscolo, tuttavia, puoi eseguire ("").char
per ottenere la funzione string.char
, che può convertire da una serie di byte a una stringa. L'ho assegnato a una variabile maiuscola (quindi non raggiungiamo il limite) in modo che possiamo usarlo per costruire sia print
le Hello, World!
stringhe che le stringhe che possono essere usate come sopra.