PAL: Exploiting Java Annotations for Parallelism