Erm, you're sorta missing the point. This is not about upwards
compatibility - this is about taking a BSD script and later trying to
port it to, say, Solaris. Portability cuts both ways, and there's no
advantage to be gained by turning BSD into a roach motel, where code
can get in but, once "BSD-ized", never leave again.
In this particular case, if you have a script which says something
And you bring it to a non-BSD system, it will not sleep _at all_ since
the other system sees "sleep 0", and that could be bad depending on
what bar and baz do. This is exactly the kind of interoperability
problem that POSIX was intended to try and solve. Let's not fight it.
I do see your point. As an avid FreeBSD user and hacker, I want to
see compatibility and I push this in my travels. What I should have
said is that perhaps if you want or need extra features you need to
somehow push standards bodies (pipe dream?) or write a portable shell