Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Should I give up grammatical correctness when naming my functions to offer regularity?

I implement several global functions in our library that look something like this:

void init_time();
void init_random();
void init_shapes();

I would like to add functions to provide a check whether those have been called:

bool is_time_initialized();
bool is_random_initialized();
bool are_shapes_initialized();

However, as you can see are_shapes_initialized falls out of the row due to the fact that shapes is plural and therefore the function name must start with are and not is. This could be a problem, as the library is rather large and not having a uniform way to group similiar functions under the same naming convention might be confusing / upsetting.

E.g. a user using IntelliSense quickly looking up function names to see if the libary offers a way to check if their initialization call happened:

IntelliSense only displaying "is_" functions

They won't find are_shapes_initialized() here unless scrolling through hundreds of additional function / class names.

Just going with is_shapes_initialized() could offer clarity:

IntelliSense displaying now all "is_initialized" functions

As this displays all functions, now.

But how can using wrong grammar be a good approach? Shouldn't I just assume that the user should also ask IntelliSense for "are_initialized" or just look into the documentation in the first place? Probably not, right? Should I just give up on grammatical correctness?

like image 918
Stack Danny Avatar asked Oct 26 '25 10:10

Stack Danny


1 Answers

The way I see it, a variable is a single entity. Maybe that entity is an aggregate of other entities, such as an array or a collection, in which case it would make sense to give it a plural name e.g. a set of Shape objects could be called shapes. Even so, it is still a single object. Looking at it that way, it is grammatically acceptable to refer to it as singular. After all, is_shapes_initialized actually means "Is the variable 'shapes' initialized?"

It's the same reason we say "The Bahamas is" or "The Netherlands is", because we are referring to the singular country, not whatever plural entity it is comprised of. So yes, is_shapes_initialized can be considered grammatically correct.

like image 119
Leo Aso Avatar answered Oct 29 '25 09:10

Leo Aso



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!