In this video Alister Christie looks at the $SCOPEDENUMS compiler directive when using enumerated types.  The video is seven and a half minutes long, and you can watch it Here