Hacker Timesnew | past | comments | ask | show | jobs | submitlogin

Pretty amazing what can be done with bash, and it looks very impressive. I can't believe all the features that were able to be put together to make using the library essentially give bash all the features of a full-featured language.

However, at the same time I kind of wonder what the use case would be for this. With all the extra syntax it would basically be equivalent to learning a new programming language, at which point it just seems to make more sense to use languages that have these features baked in.

While it looks like a really cool project, I could never see myself using it, as usually when I want to use a shell scripting language I want full portability, and end up writing in sh. When I want to write something more advanced I use real programming language.



The only use case I can think of is an extremely constrained environment where bash is the only way of interfacing with it. I tried making a really basic router do some more complicated processing once because I couldn't figure out how to get any other programming environment on it; but later realized it was worth just buying better routers that could be modified... or figuring out how to anyways.


For what I understand, this framework is compatible only with Bash, and not with other POSIX shells. Tipically on a router and other embedded platforms you find a minimal shell, like ash, that is POSIX-compatible but lacks of all the GNU extensions that Bash have and are used by this framework.

You find a full version of Bash only on GNU/Linux (not even in other UNIX OS like BSD), and there you can install the interpreter for the programming language of your choice


A coworker of mine wrote a Hadoop job scheduler (Oozie replacement) scheduler in bash because our defense network’s packaging restrictions were so awful. I suspect that once this library shows up in DoD projects that even bash will wind up becoming replaced / neutered


Or BOFHs (http://bofh.bjash.com/) in banks and other "secure" environments.


No way. Having to program a router in bash seems fun! Send me your old router!


checkout OpenWrt, you have a posix compliant ash shell from busybox and lot's of shellmagic in the base. You can parse json from bash and interact with the router via an system-bus where you can write plugins in posix-sh that can be called via json-rpc from the browser. https://openwrt.org/docs/guide-developer/ubus - example script: https://wiki.openwrt.org/doc/techref/rpcd


Yep, for the same reason why I program in the original Bourne shell from 1977. Runs everywhere without modifications including bash, since it doesn’t use any shell-specifics, so I don’t bother writing bash-only code.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: