This release focuses on stabilization of the SCXML and Java domains.
Statecharts with multiple choices in different composite states are now handled properly.
We also fixed a bug in the simulation of SCXML statecharts in which execution slots could not be properly resolved.
We added a bunch of new features to the Java domain and also improved performance and stability.
We added target type inference to our type system. This means, you can now write the following:
var song : Optional<Song> = Optional.empty()
In this case, the type inferer will deduce that Optional.empty() returns an Optional of type Song.
Java class constructors are now transformed into static new(...) methods. This means, you can now create new objects like this:
var song : Song = Song.new("mysong.wav")
Changes in imported Java classes are now directly reflected in the statechart, so you do not need to re-load the statechart model anymore.
We also improved the performance of the Java domain significantly, so it can be finally used in larger projects.
In addition, this release contains