I very much agree with this one.
Another approach for naming functions of modules could be similar to how SDL names its functions, where instead of:
module_do_something()
you would write the module in all caps as:
MODULE_do_something()
Not the prettiest either but it’s much better for readability than an ambiguous name that does not immediately and clearly separates the action from the object.
For me personally, I usually like organizing my code by modules where each module that is large enough to warrant its own folder-subfolder structure (say for example a renderer module that handles Vulkan on multiple platforms or an ECS module) has its own folder-subfolder structure.
In such cases simply prefixing the function names with MODULE_
doesn’t fully address this, as Odin expects you to put all source files flat in the same folder / package.
I could make it into a package of course, but unless I go out of my way to make it entirely project agnostic to warrant being considered a standalone library (as cyclical dependencies are forbidden), it’s not worth the risk of finding out there are more dependencies than I’ve initially thought and having to refactor a bunch of code.
Maybe that’s just a sign of me being a bad developer though, who knows. :^)
I wonder if a mix of collections for file organization and something like the OBJECT_action();
naming convention are a potential answer to this, though I could be very off-base
I am still very much new with Odin though so take my opinion with a grain of salt*