Live data from Hacker News

Nsh: A fish/bash-like Posix shell in Rust

github.com

51–56 of 56 posts

Re: Nsh: A fish/bash-like Posix shell in Rust

#51
post #45

Earlier quoted context omitted.

We wouldn’t have Rust either because why develop a new programming language when we already have programming languages? I’m fact why even have Linux or macOS running atop x86 when we have perfectly good z80 micro computers running a BASIC interpreter… I’m all for difference of opinions but that is clearly the dumbest one posted to HN in a long time.

Optionality exists because we're still zeroing in on the ideal.

No, it exists because people depend on different use cases.

There’s no such thing as a one size fits all. To suggest there is only demonstrates how little exposure you’ve have to the wider field of computing.

Re: Nsh: A fish/bash-like Posix shell in Rust

#52
post #40

Earlier quoted context omitted.

Totally agree, but having used zsh, fish and elvish as my daily driver shell (each for at least 1 month) I think that not having POSIX/bash compliance eventually becomes an annoyance. I like zsh because it is mostly (entirely?) POSIX compliant, but adds extended features. I think that's the best approach to make it easier for people to start using your shell. random note: back when the Go language was first released…

The need for complete POSIX scope has just never been an issue for me using zsh. I shebang all my scripts to bash (or even plain old sh if its for some stripped down container). I guess if I wanted a lot of functions to run tasks natively it would, but never had that need (but aware some might).

[deleted]

Re: Nsh: A fish/bash-like Posix shell in Rust

#53
post #45

Earlier quoted context omitted.

We wouldn’t have Rust either because why develop a new programming language when we already have programming languages? I’m fact why even have Linux or macOS running atop x86 when we have perfectly good z80 micro computers running a BASIC interpreter… I’m all for difference of opinions but that is clearly the dumbest one posted to HN in a long time.

Optionality exists because we're still zeroing in on the ideal.

Is that true for ... anything at all, though? Outside of computer programs, where you claim it is? The ideal food, the ideal movie, the ideal vacation, the ideal video game, the ideal body, the ideal sofa, the ideal tree...

Choice arises because humans are different, and want - and need! - different things.

Re: Nsh: A fish/bash-like Posix shell in Rust

#54

There is also https://github.com/nixpulvis/oursh which wants to be POSIX compatible with its own extensions. Actually I would prefer if a new shell focuses on bash compatibility. If features are integrated, then I would probably want to have something about error handling because it is difficult to get right in bash even with shellcheck¹ plus shellharden², and gets just worse when things run in parallel. ¹ https://ww…

I'm actually most interested in the UX around https://explainshell.com, but I haven't had the time to dig into it yet still.

Re: Nsh: A fish/bash-like Posix shell in Rust

#55

Earlier quoted context omitted.

As someone who stopped using fish, I found fzf to be more useful than fish’s history completion so it became less tolerable to have to type `env` in front of the bash oneliners our test runner puts out.

Just noting that fish supports the `var=val cmd` syntax starting in 3.1, so `env` shouldn't be necessary.

I didn’t know this! I’ll try installing fish again

Re: Nsh: A fish/bash-like Posix shell in Rust

#56
post #53

Earlier quoted context omitted.

Optionality exists because we're still zeroing in on the ideal.

Is that true for ... anything at all, though? Outside of computer programs, where you claim it is? The ideal food, the ideal movie, the ideal vacation, the ideal video game, the ideal body, the ideal sofa, the ideal tree... Choice arises because humans are different, and want - and need! - different things.

There is no ideal food. There is an ideal shell. The difference is that the goals of a shell are well defined, and invariant to human preference. Human preference is real! But when it comes to computer systems it's rarely the correct variable to be maximizing in the optimization equation. The most wonderful property of humans is that we are adaptable: if a circumstance requires us to think of things in a model that isn't our intuitive choice, because the nonintuitive model produces better outcomes by the meaningful metrics, then we are capable of doing that! Our preferences are not these sacrosanct things that dominate the design calculus. They can and should take a backseat to other things when appropriate.
Post reply on HN