A new two-stage approach to the computation of the discrete Fourier transform is described, which, relative to the fast Fourier transform (f.f.t.), can offer a number of distinct advantages: fewer inherent multiplications over a given range, no complex arithmetic for real data, and flexibility of output. The mathematical foundations and related algorithms are discussed in detail and a guide to the advantages over both the f.f.t. and the recently reported Winograd Fourier transform are included.