That thoroughly misses the point. They could do both. There is zero reason to shrink the addressable market other than Apple not wanting to play with others.
The interface is not necessarily the content of the message conveyed by the interface. Lines of text std(in|out) is a well-defined interface. Some programs may go further and specify the format of messages passed on…
I'd suggest reading http://www.catb.org/esr/writings/taoup/html/ to better understand why UNIX is the way that it is.
Just gonna leave this here. https://github.com/synacor/dtk Its filter functions are Perl, but you could do something similar with JS if you were a masochist. No need to build a new shell, though.
That thoroughly misses the point. They could do both. There is zero reason to shrink the addressable market other than Apple not wanting to play with others.
The interface is not necessarily the content of the message conveyed by the interface. Lines of text std(in|out) is a well-defined interface. Some programs may go further and specify the format of messages passed on…
I'd suggest reading http://www.catb.org/esr/writings/taoup/html/ to better understand why UNIX is the way that it is.
Just gonna leave this here. https://github.com/synacor/dtk Its filter functions are Perl, but you could do something similar with JS if you were a masochist. No need to build a new shell, though.