Esterel is a programming language dedicated to control-dominated reactive systems, such as control circuits, embedded systems, human-machine interface, or communication protocols.
It belongs to the family of synchronous languages, which also includes Lustre, Signal, and SyncCharts. Esterel has been developed since 1983 at CMA (Applied Mathematics Center, Ecole des Mines de Paris), and INRIA in Sophia-Antipolis.
The language is presented in The Esterel Primer (pdf). It has a rigorous mathematical semantics presented in The Constructive Semantics of Pure Esterel (ps). The toolset includes a compiler to software or hardware, a graphical simulator, a verification system, and optimizers.
Download it .
If you want to know much more about Esterel, we encourage you to read the complete Esterel history.