alias _do "$*"
set _ifstack ""
-alias : "$_ifstack $*"
+alias # "$_ifstack $*"
-alias :ifeq "set _ifnew_$1 _dont; set _ifnew_$2 _do; _ifeq_2 _ifnew_$1"
-alias :ifneq "set _ifnew_$1 _do; set _ifnew_$2 _dont; _ifeq_2 _ifnew_$1"
+alias #ifeq "set _ifnew_$1 _dont; set _ifnew_$2 _do; _ifeq_2 _ifnew_$1"
+alias #ifneq "set _ifnew_$1 _do; set _ifnew_$2 _dont; _ifeq_2 _ifnew_$1"
alias _ifeq_2 "set _ifstack \"${$1} $_ifstack\""
-alias :else "_else_2$_ifstack"
+alias #else "_else_2$_ifstack"
alias _else_2_do "set _ifstack \"_dont ${* q?}\""
alias _else_2_dont "set _ifstack \"_do ${* q?}\""
-alias :endif "_endif_2 $_ifstack"
+alias #endif "_endif_2 $_ifstack"
alias _endif_2 "set _ifstack \"${2- q?}\""
+alias #ifdef "#ifneq \"${$1 ?}\" \"\""
+alias #ifndef "#ifeq \"${$1 ?}\" \"\""
+
+alias #include "# exec $*"
+alias #define "# set $*"
+alias #undef "# unset $*"
+alias #error "# echo ERROR: $*; quit"
+alias #warning "# echo WARNING: $*"
+
// EXAMPLE:
-// :ifeq "$a" "$b"
-// :ifeq "$a" "$c"
-// : echo "a == b == c"
-// :else
-// : echo "a == b != c"
-// :endif
-// :else
-// :ifeq "$a" "$c"
-// : echo "a == c != b"
-// :else
-// :ifeq "$b" "$c"
-// : echo "b == c != a"
-// :else
-// : echo "a != b != c != a"
-// :endif
-// :endif
-// :endif
+// #ifeq "$a" "$b"
+// #ifeq "$a" "$c"
+// # echo "a == b == c"
+// #else
+// # echo "a == b != c"
+// #endif
+// #else
+// #ifeq "$a" "$c"
+// # echo "a == c != b"
+// #else
+// #ifeq "$b" "$c"
+// # echo "b == c != a"
+// #else
+// # echo "a != b != c != a"
+// #endif
+// #endif
+// #endif