ECharts is a state machine-based programming language for event-driven systems derived from the standardized UML Statecharts language. ECharts distinguishes itself from other Statecharts dialects by focussing on implementation issues such as determinism and code re-use. ECharts is a hosted language which means that it is dependent on an underlying programming language such as Java.