I've been looking for a shell written in a vaguely browser-friendly programming language, knowing a huge amount of the really well discussed platform differences would immediately rear up & be difficult (there are good efforts like Lightning FS[1] to begin to rebuild some fs platform on the web, & the web is rapidly advancing it's own implementations, _yay!_).<p>one of the first i ran into that i liked was Oil Shell. i recommend the Tour of the Oil Language[2] which recently made the rounds & seemed like a great introduction to the language: it really makes me want to bring shell's cool/friendly way of doing things to programming in general! and Oil was Python... ish. which seemed semi a little maybe like it could some day go ~~somewhere~~ on the web.<p>the story alas trails off. Oil Language seems to pretty intensely hack up the CPython interpreter, via "Dev Log #7: Hollowing Out the Python Interpreter"[3]. it's been a bit since i've toured the out of this world excellent blog on shell-scripting, posix, languages that is the Oil blog[4], but it has BY FAR the best discussion i've ever read on shells, doing enormous & lovely work to set high level context, discuss shells in general, to detail implementation wins & gains & changes... it hits upon everything, and is fantastically well written. Off topic for the discussion at hand, but seeing the Tour of the Oil Language go by recently really rekindled my love for this python-derived shell, and makes me ever more eager & hungry for getting a shell-like environment running in the web.<p>But again: read the Oil language/shell blog[4]: it'll totally rebuild how you think about shells, and it's a hugely entertaining technical travelogue!! Wish, like this post, it was more likely to be web-compatible.<p>[1] <a href="https://www.npmjs.com/package/@isomorphic-git/lightning-fs" rel="nofollow">https://www.npmjs.com/package/@isomorphic-git/lightning-fs</a><p>[2] <a href="https://news.ycombinator.com/item?id=27876140" rel="nofollow">https://news.ycombinator.com/item?id=27876140</a><p>[3] <a href="http://www.oilshell.org/blog/2018/11/15.html" rel="nofollow">http://www.oilshell.org/blog/2018/11/15.html</a><p>[4] <a href="http://www.oilshell.org/blog/" rel="nofollow">http://www.oilshell.org/blog/</a>