Cheapo Enigma machine (Robbers)
JavaScript by Christoph, 8/25
f=(y,x=0)=&gt;y?f(y/2,x^y):x

(range 0-255)
Sadly, f=(y,x)=&gt;y?f(y/2,x^y):x works for all values except 0.
Technical note
We use y/2 rather than y&gt;&gt;1 to save a byte. This is abusing the fact that any value of y will eventually be rounded to 0 because of arithmetic underflow.