There are lots of new shells around that does support everything you’re describing. Eg:
- nushell
- elvish (was featured on HN recently)
- powershell
- murex (disclaimer: I’m the author of that one)
- nushell
- elvish (was featured on HN recently)
- powershell
- murex (disclaimer: I’m the author of that one)
Most of the value in sh to me is that it’s ubiquitous. I write a script and the runtime is already available across most devices, operating systems, containers, and everywhere else without an extra steps.