Information for students

Boomerang is an open source decompiler fit for academic research. This page contains some project ideas for student interested in decompilation. It is suitable for both undergraduate and post-graduate students. If you are considering any of these projects, please contact us for more information.

  • Artificial Intelligence for Decompilation. A number of problems in decompilation can be solved using traditional AI techniques. This project would be suitable for an undergraduate student of computer science. Boomerang already contains a number of AI techniques, including a constraint satisfaction system for types, and a best-first search system for control flow stucturing.
  • Automatic compiler verification. Compilers take source code and generate binary programs. One use of a decompiler is to verify that the binary program generated by a compiler corrolates to the source code supplied to a compiler. This is largely done by hand. By integrating a compiler into Boomerang, a student could demonstrate that it can be done automatically. This probably a masters level project.

If you have any other ideas for this page, please send them to myself or Mike Van Emmerik.