Actually, it has to do with avoiding undue filling of the hash table.
The snag with
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname pdf@filesize\endcsname\relax
...
\else
...
\fi
is that it isn't expandable. With eTeX, you can use \ifcsname instead. If it is a control sequence, and not name, you are testing, you can use \ifdefined instead. But Heiko creates platform-independent packages.
You can think also of etoolbox packages's definition of \csletcs:
\newrobustcmd*{\csletcs}[2]{% [2011/01/03]
\ifcsdef{#2}{\expandafter\let
\csname#1\expandafter\endcsname
\csname#2\endcsname}{\csundef{#1}}%
}
The catoptions package defines this as (using a pseudoname here):
\def\letnames#1#2{%
\begingroup\expandafter\endgroup
\expandafter\let\csname#1\expandafter
\endcsname\csname#2\endcsname
}
since \let is not expandable anyway. This leaves #1 and #2 undefined if #2 was originally undefined.