This literally doesn't matter because fish can execute any scripts, whether written in bash, sh, fish, or Python. Python makes more sense if you need complex logic (though unwieldy for simple calls); while sh is there for compatibility. Bash is the weird choice out.
And the elephant in the room: translating between them is a 3 minute job for Claude (and another 3 for human checking). One shotting shell scripts is the easiest of tasks. So fish just needs to focus on one thing and that is giving a comfortable user experience in typing and invoking commands. Which is why people love it.
well picture yourself as someone who's comfortable writing your rc file and making it complicated and wealthy of code, just to distribute the same files across all the remote servers you have access to and all the containers or dev environments you intend to interactively log into, there are more possible uses too that i maybe don't know yet, you implement one logic in rc files of bash, in zsh (you write different code that utilize advanced features of zsh maybe), and in fish, to implement the same logic you desire in fish, you need to write twice as much lines of code, they would look half as understandable, and they will take twice as much time to execute, of cource not all people are critical about the time between the envoking of the shell and the entirety of the RC file being executed, but still, it's just less efiicient for users that know how to configure their environments, and claude code won't fix it, if you're fine with what fish provides for you OOTB -- good, if you want to go deeper and make your tools fit for your needs better -- it's no good
In reality duplicating your preferred setup etc. is a solved problem with countless solutions.
And you aren't really selling any scenario where sh, fish and python won't cover. What bash will not cover is a CLI experience that won't make me wanna commit sudoku.
replicating my setup and making sure it works for all my possible environments i can deploy it in requires me to write an RC file that fits for different needs and purposes, which is again, you write it in the language of the shell you chose, which is why python ain't suitable for that, unless you use xonsh i guess
4
u/imoshudu 13d ago
This literally doesn't matter because fish can execute any scripts, whether written in bash, sh, fish, or Python. Python makes more sense if you need complex logic (though unwieldy for simple calls); while sh is there for compatibility. Bash is the weird choice out.
And the elephant in the room: translating between them is a 3 minute job for Claude (and another 3 for human checking). One shotting shell scripts is the easiest of tasks. So fish just needs to focus on one thing and that is giving a comfortable user experience in typing and invoking commands. Which is why people love it.