11 comments

[ 2.6 ms ] story [ 44.1 ms ] thread
Can't sleep, must publish build systems for more fringe programming languages.
Brainfuck anyone?
Calling sed(1) a programming language is quite a stretch (although I guess you could say it's Turing-complete), as is calling a core Unix tool “fringe”.

Maybe we need a tongue-in-cheek emoji to mark submissions like this. Or would that ruin half the fun?

Read that as “Lichen: the sea’s build system” and was expecting a comparison of lichen (a kind of moss) to makefiles.

I think my brain is still in holiday mode haha

> At the top, we have a not strictly POSIX compliant, multi-argument shebang:

  #!/usr/bin/env gsed -nE -f
> It may break on some fringe UNIX implementations, but it is necessary for the system to work.

I think I can vaguely remember that I had issues with something like this on a bog-standard linux. env has the -S option though, which should help on systems where multi-argument shebangs don't work.

Hm, yeah, I've been using

    #!/usr/bin/env -S ansible-playbook --diff
to turn ansible playbooks to scripts, but reading https://www.man7.org/linux/man-pages/man1/env.1p.html it looks like -S isn't actually POSIX-specified.
-S is available from macOS env, which is good enough in my book! Unfortunately macOS sed and gsed differences are a huge pain in the ass
(comment deleted)
Insta-install. No more ad-hoc sed-ing! Now I can add lint, test, and build steps to my `sed` applications.