There is a clue about this in, e.g., `man grep`, which is also `man fgrep` and `man egrep` \-- very often tools with minor variations like this will have one man page for all the variations, explaining them in relation to one another:
> In addition, two variant programs egrep and fgrep are available. `egrep` is the same as `grep -E`. `fgrep` is the same as `grep -F`. **Direct invocation as either egrep or fgrep is deprecated** , but is provided to allow historical applications that rely on them to run unmodified.
Presumably, fgrep and egrep were once standardized names, but if you look further down the man page note that `-E` and `-F` are "specified by POSIX", implying this standardization changed tack, but (as stated above), backward compatibility is maintained.
On the topic of whether programs 'should' have variants - no, there is no standard. But there are a lot of programs that do so thanks to the light-weight nature of links (see `ln` \- ignore symbolic links).