Vogar (beta)

Today we open sourced Vogar. It starts out as a simple little tool: you give it a .java file, and it runs it:
$ cat Foo.java 
package foo;

public class Foo {
  public static void main(String[] args) {
    System.out.println("potato");
  }
}

$ ./vogar --stream Foo.java 
Actions: 1
Action foo.Foo
    potato
  OK (SUCCESS)
Outcomes: 1. All successful.

What else?

Vogar also understands JUnit, jtreg, and Caliper benchmarks. It runs code from source or from jar files. It can run code locally, or on an attached Android device. Complete instructions on getting vogar to do your work for you are on the project wiki.

Why bother?

The Dalvik core libraries team wanted to speed up our edit-run-debug development cycle. It's quite satisfying to write a quick test or benchmark and immediately see how it works on a target and reference VM.

Going forward

It's still early days for vogar, but we have ambitious plans! It's already a fine test runner and the best way to run microbenchmarks on Android.

Performance & correctness is the end; vogar is the means!

No comments: