Release 4.0.0

Removed the Vitznauerstock demonstration application

The Vitznauerstock demonstration application was not properly maintained and was not able to properly showcase the capabilities of the Deon CSL features. For these reasons it has been removed and we refer to the Deon Digital Smart Financial Instruments (SFI) product for demonstration and showcasing.

Support for Observations

Contracts can now specify observation of external “real-world facts”. The functionality is only available in the NormalContract variant of CSL contracts. See observing external state for more details.

Removal of expression normalizer

In the calls to get next events for a contract, we would simplify the where-clauses using a normalisation by evaluation approach. This functionality has been removed and as a consequence, the implementation of expression evaluation and pattern-matching has been simplied.

Removal of opaqueness-control and tracking

The expression evaluator would keep track of the history of applications of toplevel definitions. The purpose of the tracking was to be able to control which applications should be unfolded when reifying a Value back to an Exp. Since reify has been removed, tracking applications have also been removed.