Joseph write:

> > Frank:  I don't understand what you mean by 'the overhead of
> processing'.)
>
> I assume Frank was thinking that we wouldn't want to do everything in a
> dictionary manner as some arguments are always needed, and so something
> like:
>
> \def\foo@bar#1#2{%
>   Title:   #1\\%
>   Name:    \DictionaryLookup{#2}{name}\\%
> }
>
> will be faster for the explicitly passed #1 than the dictionary items,
> independent of how the dictionary is implemented. (I'd assume that a
> dictionary would be a single data structure: I'd probably do it as an
> expl3 properly list, and then recovering data would certainly add some
> processing overhead. However, even a csname expansion as you outline is

The overhead you point to is slight, and there are worse offenders (such as the LaTeX3 programming language itself).

I also suspect that if you do the tests I think you'll find
\expandafter\def\csname aa.bb\endcsname{A longish piece of text}
\def\mymacro #1{\csname #1.bb\endcsname
\mymacro{aa}
will be quicker than
\mymacro{A longish piece of text}
because of the reduced churning of tokens.  But I could be wrong.