Picture of Ondřej Lhoták

Ondřej Lhoták


[ Home ] [ Publications ] [ Teaching ]
BDD graph

Jedd

Jedd is an extension of Java that adds relations implemented using binary decision diagrams (BDDs) as a data type. It was motivated by the need for a high-level abstraction of BDDs to make it feasible to implement complicated, inter-related program analysis with BDDs. Jedd was the subject of a paper at PLDI 2004.

Soot

Soot is a Java bytecode analysis, transformation, and annotation research framework. Aside from being the main platform for my own research, it is used by many others for both teaching and research.
Poinsettiacus logo

AspectBench Compiler

AspectBench Compiler (abc) is an extensible, optimizing AspectJ compiler based on Polyglot and Soot.

SimpCont

SimpCont is a programming contest environment for running ACM-style programming contests. It is loosely based on the environment in use at the University of Waterloo, but it is intended to be simpler, more portable, and more modular. It is mostly written in bash and a minimal amount of perl, and uses ssh for communication between contestants and judges, meaning that it can be used easily through most firewalls. SimpCont is still under development, and any comments, suggestions, or patches are welcome.

The latest version is 0.14.


Javadoc search applet screenshot

Javadoc Search Applet

I have been asked to host a copy of the Javadoc Search Applet that is used in the Soot API documentation web pages.

The applet is a small box above the list of classes in any documentation created with javadoc. When any prefix of a class name is typed into the box, the list of classes scrolls to that class. Pressing Enter causes the documentation for that class to be displayed. A great timesaver!

The applet can be installed by changing to the directory that is the root of the javadoc-generated documentation, and then running this shell script.

Be sure to tell your browser to reload the page afterwards; with some browsers, it is necessary to clear the browser cache and/or restart the browser.


Valid HTML 4.01!