No one is stopping you from adding a last new line or '0', it's just removed from the core spec. Also the official library guidelines could still demand it (don't know if it already does).
As for piping I unless you're piping from std in I don't think it (should) matter(s) if you send a final linebreak, like suggested above. And when using std in your still don't know if it's done or just a empty line so an additional 'eof' like character is still needed far as I know.
As for piping I unless you're piping from std in I don't think it (should) matter(s) if you send a final linebreak, like suggested above. And when using std in your still don't know if it's done or just a empty line so an additional 'eof' like character is still needed far as I know.