On Fri, Dec 31, 2021, 1:23 PM Larry McVoy <lm@mcvoy.com> wrote:
On Fri, Dec 31, 2021 at 01:17:18PM -0500, Dan Cross wrote:
> On Fri, Dec 31, 2021, 10:54 AM Adam Thornton <athornton@gmail.com> wrote:
>
> > Slightly older, but also slightly more fundamental to the system, you need
> > look no farther than Solaris's `/bin/sh` for an illustrated example of the
> > pros and cons of maintaining backwards compatibility. [snip]
> >
>
> Sun is not the exemplar here: the move from SunOS 4's BSD userland to
> Solaris 2's SVR4 broke tons of things. They didn't seem to mind that their
> customers had to pay the cost of adaptation.

I was there for that and I minded like crazy.  It was a hugely bad move
in my opinion.  Time has not changed that.

Yeah. I work on Illumos now for Oxide, and it's...fine? But it took a long time to get there.

When the SunOS->Solaris changeover happened, the thing that really tripped me up was `awk`. SunOS 4's awk was nawk, but Solaris 2's awk was 7th Ed awk and lacked functions and so forth. nawk was available as `nawk`, but it seemed like a gratuitous regression and we had to modify a lot of local shell scripts and so on.

> The Linux example is also a bit strange. The move from e.g. `ifconfig` and
> `netstat to `ip` and `ss` required lots of local retooling

I never understood why Linux did that.

I've been dealing with a couple of Linux machines over the break, and trying to do things the canonical way instead of running back to the familiar tools, but some things just aren't supported. `ss` doesn't know about some of the more exotic address families, like AX.25 and NET/ROM. I can certainly understand why (talk about a hobbyist niche...) but the irony is that I had to install `netstat` anyway.