Backhand, 109100 - 95 = 145
"#%d&+eM#$%&"()*+H-.H/0l12n340e1234l5678l9:;<o=>?@,56ABCD 8;W<=p>?r@A"BCrDE)FG$IJoKLoMN:OPoQRoST]UVoXYoZ\o~_o`a[bfoghoij9kmcqs*tuo7w(xyozFGIJWKLNOoPQRSrTUVXlYZ[\c^_`b"dfgh]ikmn'pqst!uvwxryz{'||a}!^vH~jE
Try it online!Try it online!
Note that the version on TIO is missing a couple of instructions (notably '
). You can see it working by bundling it with, so I've copied the interpreter herehere. This program works because Backhand executes every thirdfifth instruction by defaultthanks to the first M
(it's actually a little more complex than this), so the actual code is more like:
M " d H e H l n ,l o W p , r " r ) $W o o : or o ]l o oc o o" [ o] o 9' c *! o (r o 'a ! j H
However, since you can't remove the spaces inbetween without breaking the flow of the program, you can replace them with whatever you want. The final check is that the j
jumps to the 10th character (H
) to halt and output,, which is less feasible if you modify the program. It's possible you might be able to form a valid program from thatthis mishmash, but it is unlikely. The duplicate characters come mostly from having to pad out the program above 95 necessary characters, using the o
s needed to output each character (though H
would be able to substitute for those too)and I'm sure that there's another permutation that fixes that.
Explanation:
M Increase the step count from 3 to 5
"Hello, Worlc" Push the string to the stack
] Increment c to d
'! Push !
r Reverse the stack
aj Jump back to the 10th character
H Halt and output the stack