Ok, so having thought about it, my opinion is that the ⎕fx trick should be considered invalid for the following reasons:
* Without the surrounding ∇-s, a tradfn is not a self-contained piece of code that unambiguously defines a function. It can neither be typed directly in the REPL, nor interpreted as a file, and it would be unfair to ignore the syntactic overhead of the ⎕fx call.
* The input/output of a function should be its argument/result, not stdin/stdout.
* Without the surrounding ∇-s, a tradfn is not a self-contained piece of code that unambiguously defines a function. It can neither be typed directly in the REPL, nor interpreted as a file, and it would be unfair to ignore the syntactic overhead of the ⎕fx call.
* The input/output of a function should be its argument/result, not stdin/stdout.