Mint: Java multi-stage programming using weak separability. - Edwin M. Westbrook; Mathias Ricken; Jun Inoue 001; Yilong Yao; Tamer Abdelatif; Walid Taha (PLDI, 2010)