Dezyne 2.10.0 Release

Dezyne 2.10: The first standalone release of Dezyne. Dezyne no longer depends on a server for verification or code or view generation.

Dezyne 2.10 is the “core” of the Dezyne language. Its offers the essentials in terms of language features and user experience. The “core” simulation function (linking the model to state or trace and vice versa) is not yet included. For now the “core” code generation is C++ and mCRL2.

The source code of the Dezyne core is developed in GNU Guile Scheme for future dissemination of a reference implementation.

Changes in 2.10.0 compared to 2.9.1

  • Dezyne is now stand alone, client only, serverless, pure GNU Guile Scheme.
    • Removed: server, services, dzn, dzn/daemon.
  • Parser
    • All error messages were changed.
    • “Use before declare” is no longer supported for variables.
    • Toplevel dollar -statements used inside a namespace are now rejected.
  • Code generation
    • C++: The tracing interface was changed, notably the “dzn::trace_in” function was renamed to “dzn::trace”.
    • C++: Experimental state-variable tracing is now disabled.
    • Other languages will be added in future releases.
  • Component simulator
    • The component simulator was removed.
  • Noteworthy bug fixes
    • Fixed a bug where function calls immediately following an if -statement were not considered by the verifier
    • Fixed a bug where an enum-field test used as the expression in a reply statement would crash the verifier.
    • Fixed a bug where a boolean not used as the expression in a reply statement was ignored.
    • Fixed a bug with precedence in deeply nested boolean expressions in generated code.