Even for "public" functions, I always prefix things when it makes sense. Every function in my input system that the user calls is fhInputSomething(), or the gml friendlier version fhi_something(). It doesn't limit scope, but it helps with organization in that if you type out fhInput, when the auto-complete box comes up, only those functions show because it is filtered. As soon as you type the wrong letter, they go away since it filters based on what you type.
I also do the same thing for assets. For my own game, I prefix objects with obj, music with mus, and so on. It helps with the same auto-complete filtering when typing code.