\def\powertower#1#2{\@powertower{#2}{#1}}
\def\@powertower#1#2{%
#2%
\ifnum#1>\@ne
\expandafter\expandafter\expandafter\@firstofone
\else
\expandafter\@gobble
\fi
{\expandafter^\expandafter{\expandafter\@powertower\expandafter{\number\numexpr#1-1\relax}{#2}}}%
}