Skip to content
Code repo for the public version of PlanAlyzer for the OOPSLA 2019 submission
OCaml Other
  1. OCaml 99.6%
  2. Other 0.4%
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

planalyzer Build Status

planalyzer is a tool for statically checking PlanOut programs and producing ATE contrasts.

planalyzer must be built from source. Usage is for command-line applications.


We have provided a Dockerfile to facilitate builds using Docker, which you must download and install to use. Our Travis build uses Docker.

Note that there are still many elements of the build setup that could be further Dockerized!

docker build -t planalyzer ..



docker run -t planalyzer ./

Analyzing scripts

Before you begin, you will need to acquire some PlanOut scripts. There are some examples in the testing code and in our paper.

planalyzer path/to/script.json -report

You can run this command after spinning up a prompt:

docker run -i -t planalyzer /bin/bash

Using annotations

You can have both local and global annotations on planout variables. The environment variable PLANALYZER_CONFIG must point to the file holding the global annoatations. Local annotations must be supplied using the -config command line argument. Local annotations referring to variables defined in the global annotations file will alias the global properties.

You can’t perform that action at this time.