I have an idea for a shell I've been very slowly building out where the user can embed other languages in {#! ... } blocks of an otherwise POSIX compliant shell. I haven't solved the hard problems yet and I regularly wonder why I'm bothering myself with this, but it still feels cool sometimes. Even if I can't really use it for every day things yet without tab-complete, proper redirection and a million other missing features.<p>Yes, I think the shell is an amazingly empowering tool, and yes it's also in need of some love. It's hard pulling apart what pieces of the specs still make sense, and what parts don't. But I've tried to learn and love fish shell (for example) and I think it's just proof for me that a new shell language is just going to cause more integrations and translations I need to perform on the fly. I already convert from 12 hour to 24 hours in real time, I don't really need to be translating bash->fish every time I want to do a conditional.<p>Embedding languages inside each other is a topic of theoretical consideration now for me, and I'll admit I haven't found a compelling source for previous research on this yet, but I feel like I might need it one day.<p>Anyway, I'll just be happy if one day I can try and forget about all the weird flags shell options that can be set at any time and impact the evaluation strategies of future expressions directly.<p>But alas, the shell would never stay still.