YSH, or the shell formally known as oil, is touted as a possible upgrade path from Bash.

This is the first in a three-part series of posts re-introducing the language.

  1. Reviewing YSH (you are here)
  2. Sketches of YSH Features
  3. YSH, Narrow Waists, and Perlis-Thompson Problems (Not yet released)
1 point
*

I need to disclaim that I am not affiliated with the project, and have actually been pretty critical of it in the past. But I tend to agree with the author’s reasoning across most of the blog, so I believe there is real merit to the shell.

Who knows, maybe in a few years we’ll all be writing YSH!

permalink
report
reply
1 point
*

At what is this better than zsh, bash or fish? What make u switch to ysh?

permalink
report
parent
reply
2 points

I haven’t switched to ysh. I personally use Zsh for my interactive shell, but I write my scripts in a variety of shells.

You can start with Ysh in its Bash-compatible mode, individually enable new features with shopt. Those features include:

  • Not splitting or globbing $foo by default (this is shared by Zsh and Fish)
  • A Python-inpsired parsing mode, which should supersede arithmetic mode (induced by ( ) in tests, $[ ] for string splicing and @[ ] for array splicing)
  • Strucutred data
  • New functions which return structured data (Oil calls classic shell functions “procs”, because they behave a lot like external programs with extra side effects)
  • cd to/somewhere { echo $PWD;}
permalink
report
parent
reply
1 point

I’m interested in it. It claims to be quite a bit faster but I’m curious as to how practical it is.

permalink
report
reply

Shell Scripting

!shell@programming.dev

Create post

From Ash, Bash and Csh to Xonsh, Ysh and Zsh; all shell languages are welcome here!

Rules:
  1. Follow Lemmy rules!
  2. Posts must relate to shell scripting. (See bottom of sidebar for more information.)
  3. Only make helpful replies to questions. This is not the place for low effort joke answers.
  4. No discussion about piracy or hacking.
  5. If you find a solution to your problem by other means, please take your time to write down the steps you used to solve your problem in the original post. You can potentially help others having the same problem!
  6. These rules will change as the community grows.

Keep posts about shell scripting! Here are some guidelines to help:

  • Allowed: Release Announcement of a command-line program designed for scripted use (e.g. bash, bats, awk, jq, coreutils/moreutils)
  • Allowed: Tutorials on using shell languages or supplementary tools designed for scripted use
  • Allowed: Code review/help requests for shell languages or supplementary tools designed for scripted use
  • NOT Allowed: Announcement of a CLI or TUI program that is not designed for scripted use (Yes, your fancy Zsh plugin which pretty-prints the date and time using only builtins is very cool, but unless you actually want to discuss the code itself, please check out !commandline instead!)
  • NOT Allowed: Domain-specific tutorials that do not involve shell scripting as a core component (e.g. docker-compose, ansible, nix). If you really love one of these, I’m sure there’s a community out there ready to talk about them!
  • NOT Allowed: Code review requests for non-shell programming languages and configuration languages (e.g. Python, Yaml)

In general, if your submission text is primarily shell code, then it is welcome here!

Community stats

  • 1

    Monthly active users

  • 39

    Posts

  • 129

    Comments