I describe a new compiler infrastructure for imperative synchronous languages such as Esterel and ecl. Built on the suif 2 system, it includes a new intermediate representation for this class of languages that has simple semantics designed for easy implementation in hardware or software. I describe the structure of this new compiler, the intermediate representation, and how Esterel source is translated into this intermediate representation.