Why a two pass front end?

  • Authors:
  • Janice C. Shepherd

  • Affiliations:
  • IBM Research, T.J. Watson Research Center, Yorktown Heights, New York

  • Venue:
  • ACM SIGPLAN Notices
  • Year:
  • 1991

Quantified Score

Hi-index 0.01

Visualization

Abstract

Compilers for some programming languages are traditionally considered to be best implemented with a front end (lexical analysis, semantic analysis and intermediate code generation phases) that makes only one pass over the source program. A FORTRAN compiler was converted from such a design to one that uses two passes for the benefit of obtaining a front end that is easier to understand and maintain. The details of which language features motivated this conversion are presented. Performance results are also presented that show there was only a 4% increase in compile time after the conversion.