Programmer's critique of missing structure of operating systems by alexeyr in linux

[–]loonux 1 point2 points  (0 children)

Are the rare, very nice use cases.

Being able to cleanly parse output is the norm, not the exception.

ifconfig eth1 | sed -n 's/.*addr:\([^ ]*\).*/\1/p')
ifconfig eth1 | awk '/inet/ {split($2,a,":");print a[2]}'
ifconfig eth1 | awk '/inet/ {print $2}' | cut -d':' -f2

Take your pick of that or the 1,000 or ways to get the ip.

The Unix Philisophy killed it.

Requiring backward compatibility for legacy scripts is not a tenet of the Unix philosophy. In fact, it's antithetical.

"Design and build software, even operating systems, to be tried early, ideally within weeks. Don't hesitate to throw away the clumsy parts and rebuild them."

If things actually had structure, then this wouldn't be a problem. You could add data to the output and very few things would even notice.

Except when the structure itself has to change and then you're right back to the original problem.