Better would be this
alias moo {
var %moo = $1
var %in = $true | while (%in) { var %in = $false
goto %moo {
:cow
echo -a moo cow
break
:dog
echo -a moo dog
break
:d&c
echo -a moo duck
:cat
echo -a moo cat
break
:%moo
echo -a moo mouse
break
}
}
echo -a code beyond the case
}
thats pretty read able as well, and we even get to use the real /BREAK command
[edit]
I just thought as well it leads to another interesting option, the ability to alter %moo and recall the case select if you so desired, by use of the /CONTINUE comand, forcing it to return to the top of the while loop.