GENTRAN is a code generation and translation package implemented in RLISP to run under REDUCE. It generates complete numerical programs directly from REDUCE by transforming REDUCE prefix forms into formatted FORTRAN, RATFOR or C code. Assignment statements, control structures, type declarations, and subprogram headings can be generated from algorithmic specifications and symbolically derived formulas. An expression segmentation facility breaks large expressions into subexpressions of manageable size, and an interface to an existing code optimizer allows sequences of assignment statements to be replaced by their optimized equivalents. In addition, special file-handling facilities allow code generation to be guided by template files and output to be redirected to one or more files. GENTRAN provides the flexibility necessary to handle most code generation applications.