@JoKing - trying to understand your golf to @Razetime's 5-repetitions answer. What's going-on with d and negative numbers? Why does this happen? The Wiki doesn't seem to suggest anything...
@Razetime - yes, I was trying to understand why d is behaving oddly. I don't see why it shouldn't be "made for" negative numbers, since these obviously have digits, too!
@Zgarb - do you know what's going on (re: d & negative numbers). I would have expected d to return [-1,-2,-3] for -123, not [-2,7,7]...
-123 = -100 + -20 + -3 (giving its digits after integer division by powers of 10). But -123 also = -200 + 70 + 7 (which is arithmetically correct, but doesn't give its digits after division by powers of 10).
@Razetime You seem to be treating σ as a [[TChar]] -> [[TChar]] -> [TChar] -> [TChar], which it isn't. You'd need to do some kind of fold over the substitutions.