Note: The Scheme code generator is still considered experimental; use with caution.
To enable the Scheme code generator, configure by doing something like
./configure --enable-languages=scheme --with-courage
Dezyne comes with a code generator for GNU Guile see Guile reference manual. Scheme is an interesting language for using with Dezyne. It supports a functional programming style that can be applied in handwritten code.
Program code written in a purely functional style is more reasonable
than imperative code and especially so for concurrent programs
(see Modularity Objects and State in Structure and
Interpretation of Computer Programs). The Scheme code for Dezyne
components that is generated by the code generator (See Invoking
dzn code) can still use assignments to store state in an imperative way,
but that is not a problem as this code is verified: the most tricky
aspects of the software are left to Dezyne!