setglobal result = $4 match $1 { with *c* ./compile $2.c >/dev/null !2 > !1 || setglobal result = $3 } match $1 { with *l* ./load $2 >/dev/null !2 > !1 || setglobal result = $3 } match $1 { with *r* ./$2 >/dev/null !2 > !1 || setglobal result = $3 } rm -f $2.o $2 exec cat $result