4 ms·
I like terminals as much as the next guy but I think terminals are obsolete. We just keep writing the same thing with the same capabilities in different languag
by wudangmonk 2y ago
I like terminals as much as the next guy but I think terminals are obsolete. We just keep writing the same thing with the same capabilities in different languages, very little if anything is added to it.
Projects such as nushell aim to add a bit more but I think that is too conservative. Something like the jupyter or the slime/sly repl are much better. Something with a real language instead of bash and where all the little programs that make a currently terminal work are libraries that can be used as a function or as a standalone program.
Something like that would be much nicer to work with.
- orf 2y agoTerminals are not obsolete, it’s just that we try and fit too much into them. For better or for worse, composable commands composed together with pipes is really effective. See [1] as a good example. It’s not clear that a new “real” language would be able to have the same effectiveness if it didn’t make some of the same choices and trade-offs. Nushell (and powershell) definitely falls into the “real language without bash” category. By this I mean: what parts of a “real” language would help with the problem linked in [1]? A imperative language would hinder this greatly, and a fully declarative one is too constraining. So you end up with a mix of both. 1. http://www.leancrew.com/all-this/2011/12/more-shell-less-egg/ http://www.leancrew.com/all-this/2011/12/more-shell-less-egg...
- sshine 2y ago> I think terminals are obsolete But they’re not. My colleagues and I use them every single day. My favourite shell still wasn’t written. Besides a web browser, there simply isn’t yet as powerful a piece of software for making a computer do anything. > Something with a real language instead of bash sh is a real language. It’s command-based programming. An example of a more programmy variant of this paradigm is TCL (Toolkit Command Language) with its tclsh: command languages are excellent for short, frequently used stuff, and then they get worse fast. So maybe I could qualify “real” a bit: something that is just as ergonomic for frequent stuff, but which does not get progressively worse as it veers into actual programming. > and where all the little programs that make a currently terminal work are libraries that can be used as a function or as a standalone program. Have you tried UNIX? It’s literally that! I do agree it could be improved; for example, piping around structured data is not trivial; it got better with jq, but it’s not native to POSIX.
- keeganpoppen 2y agothe oil shell guy is pretty ambitious. i dont really know what repl shell looks like because the shell is kind of the OG REPL, no?