We present a practice oriented tool for software synthesis that supports the interface-correct configuration of complex systems from a library of reusable software components. Besides simply checking the interface-correctness of a link by means of type constraints, the tool is also designed to propose software components for solving a (loosely) specified problem within a certain context. In particular, it identifies possible interfacing modules that in case of an interface-conflict may serve for the right conversion, transformation or parameter configuration. We illustrate our tool, which is based on the deductive database system LOLA, in three application specific settings.
Ulrike Peiker, Martin Griebl