Based on an abstraction of the time as a discrete logical time, the sy
nchronous languages, armed with a strong semantics, enable the design
of safe real-time applications. Some of them are of imperative style,
while others are declarative. Academic and industrial teams involved i
n synchronous programming defined together three intermediate represen
tations, on the way to standardization: IC, a parallel format of imper
ative style, GC, a parallel format of data-flow style, OC, a sequentia
l format to describe automata. In this paper, we describe more specifi
cally the format GC, and its links with the synchronous data-flow lang
uage SIGNAL. Thanks to the first experimentations, GC reveals itself a
s a powerful representation for graph transformations, code production
, optimizations, hardware synthesis, etc.