This is very pretty and simple! I like the fact that you're not afraid to use syntax that requires the whitespace where it is, and doesn't split tokens, instead of using a spaceless syntax and using a s/\s*//g-and-eval.
I agree it's nice. Note however that there's also the sub'name{body} syntax (I wonder who discovered it, maybe domm in Space Invaders) and of course BEGIN{*name=sub{body}} too.