Community Research and Development Information Service - CORDIS

More robust computer science research

Analysing computer programs is a highly complex activity in computer science research. An EU-funded project has improved the means for developing faster, more accurate and better performing software.
More robust computer science research
The PADECL (Advanced program analysis using declarative languages) project worked to implement advanced programme analysis algorithms using purely declarative specifications for higher-level analyses and different programming languages. These specifications focus on what needs to be computed rather than how the computing is done.

Past work on declarative specifications and optimisation methodology has shown performance improvements in implementations of points-to analyses. During the recently concluded project, PADECL placed its focus on developing effective programme analysis algorithms using the Datalog programming language. This is a truly declarative logic programming language often used as a query language for deductive databases.

Escape analysis, information flow, exception flow and cast safety implemented as part of the DOOP framework, part of the Java computer programming language, helped achieve better precision, completeness and performance than other initiatives to date.

PADECL implemented high-level security, reliability and performance-oriented analyses for Java programmes, and developed initial infrastructure for Javascript programme analysis. Successful results in this area also improved the functionality of the DOOP framework. More information is available on the DOOP website.

Research results were published for, among other events, the International Conference on Compiler Construction (CC 2013) and Programming Language Design and Implementation (PLDI 2013). Four publications on the topic in collaboration with the University of Athens have featured in top quality journals.

PADECL has delivered an efficient, precise, rich and modular programme analysis framework, representing an important step towards automatic programme understanding. Project outcomes facilitate the development of faster, more reliable software and increased programmer productivity. This has important implications for many sectors, and benefits for particular software tools, integrated development environments, browsers and bug detectors.

Related information

Keywords

Computer science, computer programmes, programme analysis, declarative languages, programming language
Follow us on: RSS Facebook Twitter YouTube Managed by the EU Publications Office Top