Skip to main content
Go to the home page of the European Commission (opens in new window)
English en
CORDIS - EU research results
CORDIS
Content archived on 2024-04-19

Semantics-based Program Manipulation Techniques

Objective

The major goal of SEMANTIQUE is to establish, by a mixture of theoretical investigation and practical experiments, techniques which will allow the automation of the software manufacturing process. Topics of interest to members of the Group include semantic foundations of program analysis and manipulation, program analysis, program generation and advanced implementation techniques.
Technology is being developed for manufacturing software under human guidance, but with minimal human involvement, with the aim of moving away from today's way of treating programs one at a time to treating them as anonymous members of classes, subject to mechancial transformation, optimization and other adaptations.

Previous work on program analysis has emphasized the abstract interpretation approach. This work has been important for providing frameworks for correctness proofs and for understanding the relationships between approaches. Unfortunately the higher order analyses have proved difficult to implement efficiently. Over the last 2 years, there has been a definite shift in the work to using nonstandard type inference systems for describing analyses; the implementation route for such analyses has been well studied. One tangible result of this work has been a fourfold increase in speed for Similix by reengineering the analyses to use constraint solving algorithms. Several new analysis techniques have been developed for analysis of concurrent languages such as Linda, Gamma and Concurrent ML. Other approaches are now being considered for program generation, as well as partial evaluation. In particular, a deeper understanding of Turchin's notion of supercompilation and its relationship to partial evaluation has been developed. A partial evaluator for a large subset of the C programming language has been implemented.
ACTIVITIES

The Group's expertise ranges across a broad spectrum from pure theory through to extensive practical experience of implementing semantics-based program manipulation tools. Hitherto, the main emphasis of our work has been on the development of techniques for static analysis of programs based on abstract interpretation and program generation using partial evaluation. Over the last year, however, much of our work on program analysis has been based on non-standard type inference and we are beginning to look at other approaches to program generation (eg Turchin's notion of supercompilation). We have also devoted more effort on non-functional languages, for example analysis of CML (Concurrent ML) and partial evaluation of C.

POTENTIAL

Semantics-based program analysis is at the interface between theory and practice. Since SEMANTIQUE is a Basic Research Working Group, the majority of our results take the form of scientific papers rather than artefacts. Nevertheless, our work on program generation is tested by means of prototype programs and the same is now true of our program analysis work in the context of the Glasgow Haskell Compiler. Similix and the Haskell compiler have been widely distributed. There are signs of growing industrial interest in the partial evaluation work.

Fields of science (EuroSciVoc)

CORDIS classifies projects with EuroSciVoc, a multilingual taxonomy of fields of science, through a semi-automatic process based on NLP techniques. See: The European Science Vocabulary.

You need to log in or register to use this function

Programme(s)

Multi-annual funding programmes that define the EU’s priorities for research and innovation.

Topic(s)

Calls for proposals are divided into topics. A topic defines a specific subject or area for which applicants can submit proposals. The description of a topic comprises its specific scope and the expected impact of the funded project.

Data not available

Call for proposal

Procedure for inviting applicants to submit project proposals, with the aim of receiving EU funding.

Data not available

Funding Scheme

Funding scheme (or “Type of Action”) inside a programme with common features. It specifies: the scope of what is funded; the reimbursement rate; specific evaluation criteria to qualify for funding; and the use of simplified forms of costs like lump sums.

Data not available

Coordinator

IMPERIAL COLLEGE OF SCIENCE, TECHNOLOGY AND MEDICINE
EU contribution
No data
Address
Queens Gate 180
SW7 2BZ LONDON
United Kingdom

See on map

Total cost

The total costs incurred by this organisation to participate in the project, including direct and indirect costs. This amount is a subset of the overall project budget.

No data

Participants (5)

My booklet 0 0