Why do some values on nodes lack an input socket? Why do some nodes have values without input sockets?

E.g. The glare node:



This may not be the most useful example, but there are instances where a plug might be useful, e.g. the dimensions of a blur node.

This can be easily worked around with a driver, proving that there is no technical limitation:



Is there any reason for certain values not having a node input?
The reason is that this is the way the node is written by the developer,
Sometimes it makes sense for values to be adjusted per-pixel and sockets are used, other times its enough to have a setting on the node.

The are undoubtedly cases where you might want to adjust a setting per-pixel but there isn't a socket input. I guess you could call this a not-yet-implemented feature. There may be a good reason the developer chose not to do this, or it may be an oversight.