Ph.D. student
Email: jun.lambda at gmail.com

My advisor is Dr. Taha.
Multi-stage programming is a general framwork for type-safe program generation and metaprogramming. I'm interested in its basic metatheory and type systems, and also in using it to write verifiable (or just less buggy), low-level programs.
Exact real-number computations: Many computer applications require manipulation of real numbers, such as cyber-physical systems, graphics and computational geometry, and statistics. The conventional choice for implementing these systems is floating point numbers, which has the nasty problem of round-off errors. Determining the magnitude of the error that accumulates, and the damage it does, is often an extremely challenging and time-consuming task. Can we, instead, compute real numbers without fixing the precision, and still get reasonable semantics and performance?
Angela Yun Zhu, Jun Inoue, Marisa Linnea Peralta, Walid Taha, Marcia K. O'Malley, and Dane Powell. Implementing Haptic Feedback Environments from High-level Descriptions. SHOES 2009 [ paper ]
Edwin Westbrook, Mathias Ricken, Jun Inoue, Yilong Yao, Tamer Abdelatif, and Walid Taha. Multi-stage Programming for Mainstream Languages. Draft [ paper; technical report ]
Jun Inoue, Walid Taha, and Edwin Westbrook. Reasoning About Staged Programs. Draft [ paper; technical report ]