We have arranged for two excellent invited speakers.
Analyzing MATLAB: Why is it important and what are the challenges?
Tuesday, July 19th, 9:00-10:00, Ballroom
MATLAB is a popular dynamic programming language used for scientific and numerical programming. As a language, it has evolved from a small scripting language intended as an interactive interface to numerical libraries, to a very popular language supporting many language features and libraries. The overloaded syntax and dynamic nature of the language, plus the somewhat organic addition of language features over the years, makes static analysis of modern MATLAB quite challenging.
In this talk I will motivate why it is important for programming language, compiler and software engineering researchers to work on MATLAB and I will provide a high-level overview of McLab, a suite of compiler tools my group is developing at McGill which it intended to facilitate such research. I will discuss how we solved one challenge, determining the kind of identifiers, and I will outline some possible future directions for research.
Wednesday, July 20th, 9:00-10:00, Ballroom
Emerging open-source embedded platforms such as TinyOS, Android, Arduino, and ROS are gaining significant numbers of developers. The application requirements and programming models — particularly in the cases of TinyOS and Arduino — are very different from what most developers are used to. Thus, developers often have a hard time creating robust code. Testing and analysis tools can help, but there aren’t yet enough good tools. This talk is about what’s new, different, easy, and difficult about creating tools supporting embedded software development; it specifically focuses on the sensor network operating system TinyOS, with which the speaker has nine years of experience.