Types are fundamental for enforcing levels of abstraction in modern high-level programming languages and their lower-level representations. However, some type-related features suc...
This paper proposes to use SDL block diagrams, UML class diagrams, and UML behavior diagrams like collaboration diagrams, activity diagrams, and statecharts as a visual programmin...
A software product line (SPL) is a set of software systems with well-defined commonalities and variabilities that are developed by managed reuse of common artifacts. In this pape...
Horn⊃ is a logic programming language which extends usual Horn clauses by adding intuitionistic implication in goals and clause bodies. This extension can be seen as a form of s...
Applying program comprehension techniques may render software maintenance and evolution easier. Understanding a software system typically requires a combination of static and dyna...
Andy Zaidman, Abdelwahab Hamou-Lhadj, Orla Greevy,...