I think I just found a bug in GNU coreutils tr and honestly I deserve it for not taking my own advice and trying to script something slightly nontrivial in coreutils.
And it's not even a complex tr invocation, I'm just trying to replace newlines with spaces.
Unix was a mistake, the Lisp machine people were right.
ps.: Just so I know I'm not making a complete fool of myself: `tr '\n' ' '` *is* the correct invocation, right? All sources say it is. It's like, the simplest tr use case