default.nix typically as a different life-cycle than the others generated files, it is meant to be modified and often we don't want it in the same directory (eg. .stack.nix) as the other generated files.
Outputting default.nix on stdout would more easily allow to differentiate the two life-cycles.
On a related note, when using a directory dedicated to the generated files (eg. .stack.nix) I think it would make sense that the current pkgs.nix be default.nix instead.