The logic behind ActionScript

Hi guys.

This one is aimed at the more “educated in ActionScript” users of Flash out there.

I was just wondering what the logic is behind the differences in object and class functions/methods/getters/setters etc.

For example:

Why is Sound.position a getter and Sound.getBytesLoaded() a function even though they are both read-only?

The same goes for MovieClip.useHandCursor and MovieClip._width (why the underscore before width)?

This isn’t something I’ve really looked into before and I thought if I could get a better understanding of it then I may be able to make more logical AS classes.