#### Filter Results:

#### Publication Year

1994

2014

#### Co-author

#### Key Phrase

#### Publication Venue

Learn More

This paper describes the concept of language oriented programming which is a novel way of organising the development of a large software system, leading to a different structure for the finished product. The approach starts by developing a formally specified, domain-oriented, very high-level language which is designed to be well-suited to developing " this… (More)

In this paper we will take a detailed look at a larger example of program analysis by transformation. We will be considering Algorithm 2.3.3.A from Knuth's \Fundamental Algorithms" Knuth (1968) (P.357) which is an algorithm for the addition of polynomials represented using four-directional links. Knuth (1974) describes this as having \a complicated… (More)

There is a vast collection of operational software systems which are vitally important to their users, yet are becoming increasingly difficult to maintain, enhance and keep up to date with rapidly changing requirements. For many of these so called legacy systems the option of throwing the system away an rewriting it from scratch is not economically viable.… (More)

- Mohammed Daoudi, Lahcen Ouarbya, John Howroyd, Sebastian Danicic, Mark Harman, Chris Fox +1 other
- WCRE
- 2002

Conditioned slicing can be applied to reverse engineering problems which involve the extraction of executable fragments of code in the context of some criteria of interest. This paper introduces ConSUS, a conditioner for the Wide Spectrum Language, WSL. The symbolic executor of Con-SUS prunes the symbolic execution paths, and its predicate reasoning system… (More)

The FermaT transformation system, based on research carried out over the last twelve years at Durham University and Software Migrations Ltd., is an industrial-strength formal transformation engine with many applications in program comprehension and language migration. This paper describes one application of the system: the migration of IBM 370 Assembler… (More)

A backtracking algorithm with element order selection is presented, and its eeciency discussed in relation both to standard examples and to examples concerning relation-preserving maps which the algorithm was derived to solve.

The aim of this article is to provide a unified mathematical framework for program slicing which places all slicing work for sequential programs on a sound theoretical foundation. The main advantage to a mathematical approach is that it is not tied to a particular representation. In fact the mathematics provides a sound basis for <i>any</i> particular… (More)

A method is described for obtaining useful information from legacy code. The approach uses formal proven program transformations, which preserve or reene the semantics of a construct while changing its form. The applicability of a transformation in a particular syntactic context is checked before application. By using an appropriate sequence of… (More)

Software reengineering has been described as being " about as easy as reconstructing a pig from a sausage " [11]. But the development of program transformation theory, as embodied in the FermaT transformation system, has made this miraculous feat into a practical possibility. This paper describes the theory behind the FermaT system and describes a recent… (More)

In this paper we give a brief introduction to the foundations of WSL transformation theory and describe how the concept of program slicing can be form-alised in the theory. This formalism naturally lends itself to several generalisations including amorphous slicing and conditioned slicing. One novel general-isation is " semantic slicing " which combines… (More)