YOU ARE HERE: Research » Areas » Programming Languages » PL Seminar

PL Seminar

The Programming Languages Seminar supersedes the pi-lambda seminar as the research meetings of the Programming Languages and Formal Models group at the Department of Computer Science, University of Aarhus, Denmark.

Talks are announced on our mailing list and on the home page of the department of computer science.

If you have questions about the seminar or want to announce a talk, please contact Ian Zerny.

Upcoming Events (previous events)

Talk: Earl Barr

Title: Techniques and Tools for Engineering Robust Numerical Software

Speaker: Earl Barr

Time and place: 30.04.2012, 12:30-13:30, in Nygaard 295

Abstract:

Writing correct software is difficult; writing reliable numerical software involving floating-point numbers is even more difficult. Computers provide numbers with limited precision; when confronted with numbers that exceed that limit, they throw runtime exceptions or introduce approximation and error. Well-known studies (e.g., Huckle) show that numerical errors often occur and can be disastrous, even in "well-tested" code. Thus, practical techniques for systematic testing and analysis of numerical programs are much needed.

In this talk, I will present my recent work on developing testing and analysis techniques for numerical software. In particular, I will introduce Ariadne, the first practical symbolic execution engine for automatically detecting floating-point exceptions, and a novel testing framework that systematically perturbs a program's numerical calculations to elicit latent numerical instability. The tools have been extensively evaluated on the widely-used GNU Scientific Library (GSL). The results show that both tools are effective. In particular, Ariadne identified a large number of real, unchecked runtime exceptions in GSL. The GSL developers confirmed our preliminary findings and look forward to Ariadne's imminent public release.

Bio:

Earl Barr is a postdoctoral scholar at the University of California at Davis, where he received his M.S. (1999) and Ph.D. (2009) degrees, both in Computer Science. He was awarded the highly-competitive I3P Fellowship from the Department of Homeland Security in 2010 and serves as a co-PI on two NSF grants and an Air Force DURIP grant. Dr. Barr's research interests include testing and analysis, empirical software engineering, computer security, and distributed systems. His recent work focuses on testing and analysis of numerical software, automated debugging, defect analysis and prediction, and code obfuscation.

Talk: Bjarne Stroustrup

Title: A Concept Design for C++

Speaker: Bjarne Stroustrup

Time and place: 08.05.2012, 13:00-14:00, in Lille Aud.

Abstract:

C++ does not provide facilities for directly expressing what a function template requires of its set of parameters. This is a problem that manifests itself as poor error messages, obscure bugs, lack of proper overloading, poor specification of interfaces, and maintenance problems. Many have tried to remedy this (in many languages) by adding sets of requirements, commonly known as "concepts.“ Many of these efforts, notably the C++0x concept design, have run into trouble by focusing on the design of language features.

This talk presents the results of an effort to first focus on the design of concepts and their use; Only secondarily, we look at the design of language features to support the resulting concepts. We describe the problem, describe our approach to a solution, give examples of concepts for the STL algorithms and containers, and finally show an initial design of language features. We also show how we use a library implementation to test our design.

So far, this effort has involved more than a dozen people, including the father of the STL, Alex Stepanov, but we still consider it research in progress rather than a final design. This design has far fewer concepts than the C++0x design and far simpler language support. The design is mathematically well founded and contains extensive semantic specifications (axioms).

Comments on content: 
Revised 2012.04.25