Описана система переписывания термов TermWare и ее применение к задачам анализа и преобразования исходного кода. Особенностью подхода является комбинирование декларативного и императивного стилей программирования и построение слабых аппроксимаций вычислительной семантики, которые отображают определенные аспекты поведения программы, вместо полной формальной модели. Описаны два практических приложения системы TermWare – статический анализатор исходного кода для Java и система частичного выполнения Java-програм.
The term-rewriting system TermWare and its application to the analysis and transformation of source code are described. The feature of the approach is combining declarative and imperative styles and construction of weak approximations of program computational semantics, representing certain aspects of program behavior, instead of complete formal model. Two practical applications of TermWare system are described – static analyzer of source code for Java and system of partial evaluation of the Java-programs.