News for hackers. Stuff that matters.
Re:Go Terminal_ Elegant and Efficient Linux Terminal by erlehmann_ on Friday July 08, 2016 @11:11PM (#12059910)
In your vision where text is not the universal interface, how would Unix pipes work? After all, often the output of one tool is the input of another – that usually has not been written to interact with the first.
Re:Go Terminal_ Elegant and Efficient Linux Terminal by KirinDave on Monday July 11, 2016 @04:49PM (#12074458)
Powershell accomplishes this by making the pipes pass tagged objects around containing streams. This actually has a lot of nice properties when you go to manipulate the objects programatically.

And it's a logical extension of the UNIX stream model, where in reality you're passing around a whole heck of a lot more than text when you type 'cat | sed'. You're passing environment context, multiple streams, etc.

The idea that this is "more complex" than unix pipes is understandable, but the reality is that IPC is pretty complex and a whole lot of magic and shared expectations go into the "simplicity" that bash offers. And even then that model breaks down all the time (e.g., as Docker becomes common as a deploy target the idea that you should output error conditions to STDERR has rapidly become problematic).

Re:Go Terminal_ Elegant and Efficient Linux Terminal by erlehmann_ on Tuesday July 12, 2016 @04:17PM (#12082008)
I do not understand what is the problem when using Docker. Please explain?
Re:Go Terminal_ Elegant and Efficient Linux Terminal by KirinDave on Wednesday July 13, 2016 @03:10PM (#12088803)
It's somewhat involved, but life is a lot easier if your Docker containers just log everything to stdout, when you go to ship software that uses them.

Stderr is sort of an annoying detail. Especially given how inconsistent output to it is and how it has different rules for how output flushes.