Comment by 082349872349872

2 years ago

One thing I enjoy about shell pipelines is that intermediate processes may terminate them.

eg https://www.99-bottles-of-beer.net/language-bourne-shell-108...

In fact, I rely on that sort of early termination / circuit breaking as a feature!

That is a big reason why I use functions. They help me define sane fallbacks, and/or enforce API contracts. Those, in turn, are points where I can enforce "fail and die" behaviour.

Design notes: https://www.evalapply.org/posts/shell-aint-a-bad-place-to-fp...

Example from shite: Hard stop if mandatory front matter for posts is absent: https://github.com/adityaathalye/shite/blob/master/bin/templ...

edit: clarity