--- /dev/null
+#!/bin/bash
+# Desc: Defines bash functions yell(), die(), and try(), which are useful for
+# indicating where in a script an error occurs.
+# Note: All three functions should be added together if used at all.
+# Ref/Attrib: [1] Yell, Die, Try Three-Fingered Claw technique https://stackoverflow.com/a/25515370
+# Depends: GNU Coreutils 8.30
+# Version 0.1.1
+
+#==BEGIN Define script parameters==
+#==END Define script parameters==
+
+#===BEGIN Declare local script functions===
+yell() { echo "$0: $*" >&2; } # print script path and all args to stderr
+die() { yell "$*"; exit 111; } # same as yell() but non-zero exit status
+try() { "$@" || die "cannot $*"; } # runs args as command, reports args if command fails
+#===END Declare local script functions===
+
+#==BEGIN sample code==
+yell "This message should appear in stderr.";
+try echo "This message should appear in stdout.";
+try eeeecho "This message should appear in an error message in stderr.";
+yell "This message should not appear because \"try eeeecho\" failed.";
+#==END sample code==