4 ms·
You could even imagine a world in which we create an entire suite of deterministic, limited-purpose tools and then expose it directly to humans!
by chemotaxis 11mo ago
You could even imagine a world in which we create an entire suite of deterministic, limited-purpose tools and then expose it directly to humans!
- layer8 11mo agoI wonder if we could develop a language with well-defined semantics to interact with and wire up those tools.
- chubot 11mo ago> language with well-defined semantics That would certainly be nice! That's why we have been overhauling shell with https://oils.pub https://oils.pub , because shell can't be described as that right now It's in extremely poor shape e.g. some things found from building several thousand packages with OSH recently (decades of accumulated shell scripts) - bugs caused by the differing behavior of 'echo hi | read x; echo x=$x' in shells, i.e. shopt -s lastpipe in bash. - 'set -' is an archaic shortcut for 'set +v +x' - Almquist shell is technically a separate dialact of shell -- namely it supports 'chdir /tmp' as well as cd /tmp. So bash and other shells can't run any Alpine builds. I used to maintain this page, but there are so many problems with shell that I haven't kept up ... https://github.com/oils-for-unix/oils/wiki/Shell-WTFs https://github.com/oils-for-unix/oils/wiki/Shell-WTFs OSH is the most bash-compatible shell, and it's also now Almquist shell compatible: https://pages.oils.pub/spec-compat/2025-11-02/renamed-tmp/spec/compat/TOP.html https://pages.oils.pub/spec-compat/2025-11-02/renamed-tmp/sp... It's more POSIX-compatible than the default /bin/sh on Debian, which is dash The bigger issue is not just bugs, but lack of understanding among people who write foundational shell programs. e.g. the lastpipe issue, using () as grouping instead of {}, etc. --- It is often treated like an "unknowable" language Any reasonable person would use LLMs to write shell/bash, and I think that is a problem. You should be able to know the language, and read shell programs that others have written
- jacquesm 11mo agoI love it how you went from 'Shell-WTFs' to 'let's fix this'. Kudos, most people get stuck at the first stage.
- chubot 11mo agoThanks! We are down to 14 disagreements between OSH and busybox ash/bash on Alpine Linux main https://op.oils.pub/aports-build/published.html https://op.oils.pub/aports-build/published.html We also don't appear to be unreasonably far away from running ~~ "all shell scripts" Now the problem after that will be motivating authors of foundational shell programs to maintain compatibility ... if that's even possible. (Often the authors are gone, and the nominal maintainers don't know shell.) As I said, the state of affairs is pretty sorry and sad. Some of it I attribute to this phenomenon: https://news.ycombinator.com/item?id=17083976 https://news.ycombinator.com/item?id=17083976 Either way, YSH benefits from all this work
- zahlman 11mo agoAs it happens, I have a prototype for this, but the syntax is honestly rather unwieldy. Maybe there's a way to make it more like natural human language....
- imiric 11mo agoI can't tell whether any comment in this thread is a parody or not.
- zahlman 11mo ago(Mine was intended as ironic, suggesting that a circle of development ideas would eventually complete. I interpreted the previous comments as satirically pointing at the fact that the notion of "UNIX-like tools" owes to the fact that there is actually such a thing as UNIX.)
- AdieuToLogic 11mo agoWhen in doubt, there's always the option of rewriting an existing interactive shell in Rust.
- SatvikBeri 11mo agoHalf my use of LLM tools is just to remember the options for command line tools, including ones I wrote but only use every few months.
- utopiah 11mo agoHmmm but how would you name that? Agent skills? Meta cognition agentic tooling? Intelligence driven self improving partial building blocks? Oh... oh I know how about... UNIX Philosophy? No... no that'd never work. /s