💾 Archived View for gemini.ctrl-c.club › ~stack › gemlog › 2022-08-01.bash.gmi captured on 2024-03-21 at 15:19:25. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2023-01-29)

-=-=-=-=-=-=-

Misadventures with bash shell

There is a Russian proverb that translates roughly as 'if you are a bad dancer, your own testicles will get in the way'. While gendered, and somewhat offensive, it describes my relationship with bash -- it feels like I get tangled up in my balls every time I use it.

I am primarily a Common Lisp programmer, and bash makes zero sense to me.

Bash has syntax (yuck) and it is really inconsistent - or at least, I can't figure out how or why things are done without looking up numerous examples. I don't know why I still use it - I guess every system I've used defaults to it... Why in the world does it exist?

It seems completely nuts, acting completely different if you change a whitespace.

Simple things, like looping on files or checking if files exist are cumbersome. There are many ways to do the same thing.

Do you need to put paths into quotes? Do variables need to be inside {braces} when splicing into pathnames? I just had to remove quotes and braces for a script to work, and I don't know why. What's worse is that I really don't want to know. It's just ugliness.

I wish there was a compact Common Lisp shell. Spinning up a 75MB SBCL image as a shell seems not prudent, and many tildes don't even have SBCL installed. Has anyone made a small executable that connects to a running SBCL image to perform shell tasks? That would be compact and sensible. CLASH. Common Lisp Accordant SHell.

ACCORDANT (adj): not having or showing any apparent conflict.

In the meantime, if you have a few minutes, write about why you love your shell. I really want to know.

index

home