Sun 14 Jun 2015 14:00 - 15:30 at A107-A108 - Doop Framework 101
Sun 14 Jun 2015 16:00 - 18:00 at A107-A108 - Doop Framework 101

This tutorial will cover the usage of Doop, an open source (publicly available at https://bitbucket.org/yanniss/doop [bitbucket.org]) framework for (static) points-to analysis of Java programs. Doop builds on the idea of specifying pointer analysis algorithms declaratively, using Datalog, a logic based language for defining (recursive) relations. Doop makes it possible to describe a full end-to-end analysis in Datalog. Special care has be taken so as to aggressively optimize our highly recursive Datalog rules. As a result, Doop is scalable to large Java programs without sacrificing expressiveness or coverage of language features. This approach allows us to specify a variety of context-sensitive analyses just by redefining a few key rules. The majority of the core logic rules stays unaltered.

In this tutorial you will:

  • become familiar with the Datalog dialect that we use in the Doop framework
  • see parts of the core logic as well as how easily one can define a new analysis
  • run a few analyses in real-time on some of our benchmark programs and witness the whole work-flow of using Doop
  • try it for yourself, should you desire to do so – trying out Doop on your personal computer will require you to acquire an academic license for the LogicBlox engine that Doop uses under the hood (the process is fast and this can be done during the tutorial).

Sun 14 Jun

Displayed time zone: Tijuana, Baja California change

14:00 - 15:30
Doop Framework 101Tutorials at A107-A108
14:00
90m
Talk
Doop Framework 101
Tutorials
George Kastrinis University of Athens, Yannis Smaragdakis University of Athens
Link to publication
16:00 - 18:00
Doop Framework 101Tutorials at A107-A108
16:00
2h
Talk
Doop Framework 101
Tutorials
George Kastrinis University of Athens, Yannis Smaragdakis University of Athens
Link to publication