Semantic comparison of structured visual dataflow programs
Philip T. Cox, Anh Dang · 2010
The diff utility is an important basic tool, providing a foundation for many of the fundamental practices of software development, such as source code management. While there are many file differencing tools for textual programming languages, including some that look at more than simple textual variations, there are few for visual programming languages. We present an algorithm for semantic comparison of programs in controlled visual dataflow languages; that is, languages in which dataflow diagrams are embedded in control structures. This algorithm performs depth-first search of call structures comparing embedded diagrams using subgraph isomorphism, to determine if two programs are semantically equivalent, and if they are not, discovers the differences. We use the visual language Prograph for illustration; however, the mechanism we propose could be applied to any controlled dataflow language, such as LabVIEW.