The Standard Library has been moved to JSR. See the blog post for details.
THE_ANSWER=42
QUOTED_SINGLE='single quoted'
QUOTED_DOUBLE="double quoted"
EXPAND_VAR=$THE_ANSWER
EXPAND_TWO_VARS=$QUOTED_SINGLE!==$QUOTED_DOUBLE
EXPAND_RECURSIVE=$EXPAND_TWO_VARS
EXPAND_DEFAULT_TRUE=$NO_SUCH_VAR:-default
EXPAND_DEFAULT_FALSE=$THE_ANSWER:-default
EXPAND_DEFAULT_VAR=$NO_SUCH_VAR:-$THE_ANSWER:-default
EXPAND_DEFAULT_VAR_RECURSIVE=$NO_SUCH_VAR:-$EXPAND_TWO_VARS:-default
EXPAND_DEFAULT_VAR_DEFAULT=$NO_SUCH_VAR:-$NO_SUCH_VAR:-default
EXPAND_DEFAULT_WITH_SPECIAL_CHARACTERS=$UNDEFINED_ENV_KEY:-/default/path
EXPAND_VAR_IN_BRACKETS=${THE_ANSWER}
EXPAND_TWO_VARS_IN_BRACKETS=${QUOTED_SINGLE}!==${QUOTED_DOUBLE}
EXPAND_RECURSIVE_VAR_IN_BRACKETS=${EXPAND_TWO_VARS_IN_BRACKETS}
EXPAND_DEFAULT_IN_BRACKETS_TRUE=${NO_SUCH_VAR:-default}
EXPAND_DEFAULT_IN_BRACKETS_FALSE=${THE_ANSWER:-default}
EXPAND_DEFAULT_VAR_IN_BRACKETS=${NO_SUCH_VAR:-${THE_ANSWER:-default}}
EXPAND_DEFAULT_VAR_IN_BRACKETS_RECURSIVE=${NO_SUCH_VAR:-${EXPAND_TWO_VARS:-default}}
EXPAND_DEFAULT_VAR_IN_BRACKETS_DEFAULT=${NO_SUCH_VAR:-${NO_SUCH_VAR:-default}}
EXPAND_DEFAULT_IN_BRACKETS_WITH_SPECIAL_CHARACTERS=${UNDEFINED_ENV_KEY:-/default/path}
EXPAND_ESCAPED=\$THE_ANSWER
EXPAND_WITH_DIFFERENT_STYLES=${QUOTED_SINGLE}!==$QUOTED_DOUBLE