LaTeX does try to encourage a naming scheme
Document level commands (\section
) lowercase.
Package interface commands (\DeclareTextCommandDefault
) CamelCase.
Package or kernel internal commands (\@text@composite@
) lower@case@with@.
Expl3 programming layer commands (\cs_new:NN
) module_name_words:argspec.
TeX primitives (\expandafter
) lowercase.
Mostly this convention is not enforced, and of course one might notice that the top and bottom layer using the same convention makes enforcing anything difficult. LaTeX3 addresses this by renaming all the commands at the bottom layer.
So the command you mention has changed from using a "package interface name" to an "internal name" but whether that is appropriate in this case I couldn't judge, not knowing that class.
@tufte
(but just as good asTufte
) is a good idea to help avoid name collisions, and the use of@
signs makes it even less likely to have name collisions as that requires special handling in regular code (i.e.,\makeatletter
...\makeatother
).