You are right. There sure are many ways to handle this feature. But to use them, you have to be aware about it.
And - shame to me - I haven't been. May be because I have under my years in SL wrote only simple scripts - switching lights on/off, changing colours and textures of prims, playing whit particles for my own fun, making simple menus, etc.
But recently I have been playing with one opensource script and found out, that sometimes it does what it should do and sometimes doesn't. When I looked it closer, it seemed to me, that logic there were quite right, but that the aberration there must have something to do with the way LSL handles floats. I could fix the script so that I'm happy with it. But as I am curious person, I liked to know, why it worked as it did. Now I know. 😊