We need to distinguish between “writes zeroes forever” and “simulates a machine that writes zeroes forever”. The second one is also in an infinite loop, but it does things beyond writing zeroes (depending on how the simulated machine’s output is encoded).
I guess “write zeroes” should not be taken literally. The part with “ignores all future output” is better. But in that case, suppose you write a program that simulates another program, and stops if someone pressed the Esc key. Even if the simulated program is bricked, the simulating program will react to the key, so it is not bricked. (And, yeah, Turing machines are not interactive, so… what is the analogy in their case?)
I think the universal part means it’s all-or-none (any machine that can emulate a Brickable machine is itself Brickable).
We need to distinguish between “writes zeroes forever” and “simulates a machine that writes zeroes forever”. The second one is also in an infinite loop, but it does things beyond writing zeroes (depending on how the simulated machine’s output is encoded).
I guess “write zeroes” should not be taken literally. The part with “ignores all future output” is better. But in that case, suppose you write a program that simulates another program, and stops if someone pressed the Esc key. Even if the simulated program is bricked, the simulating program will react to the key, so it is not bricked. (And, yeah, Turing machines are not interactive, so… what is the analogy in their case?)