D‐Clean is a functional coordination language for distributed computation. The language was designed for the need of high‐level process description and communication coordination of functional programs distributed over a cluster. The pure functional computational nodes required language primitives to control the dataflow in a distributed process‐network. Therefore, in order to achieve parallel features, we created an extension for the lazy functional programming language Clean using new language elements.

D‐Clean is compiled to an intermediate level language called D‐Box, which is designed for the description of the computational nodes. Every D‐Clean construct generates a D‐Box expression. The D‐Box expressions hide the low level implementation details and enable direct control over the process‐network. The asynchronous communication is based on language‐independent middleware services.

Earlier we have presented the syntax and the semantics of both coordination languages. Practical experiences showed the difficulties of distributed program development, especially in testing and debugging. This paper aims to provide software comprehension application for a better understanding and usage of the D‐Clean distributed system. We model the elements and the behaviour of the D‐Clean system using C++ templates. The strong type system of C++ templates guarantees the correctness of the model. Using templates we can avoid run‐time overhead achieving impressive efficiency.

This content is only available via PDF.
You do not currently have access to this content.