> OP wanted:
>
>  ...  24   25   26   27    28    29   ...
>  ... 'X', 'Y', 'Z', 'AA', 'AB', 'AC' ...

Here's one that uses succ to do the dirty work, but doesn't complicate
things with inject:
(note that '@'.succ = 'A')

def letter n
  l='@'
  n.times{l.succ!}
  l.gsub(/@/,'-')
end

-Adam