Courtesy Jt Appt - Asst Prof, Department Of Computer Science, School Of Computing
Jt Appt - Assistant Professor, Dean Of Faculty, Yale-nus College
Doctor of Philosophy in Computer Science, Indiana University, Bloomington, United States
My research area is programming languages with an emphasis on static analysis/control-flow analysis, syntax and parsing, compilers and optimization, generic and meta-programming, and next-generation languages. Most recently I have been looking into developing the newly emerging paradigm of fixed-point-oriented programming, which can improve programmer productivity by an order of magnitude.
In my vision of an ideal future, programmers would be able to communicate their intent to a computer (i.e., write programs) as quickly as and at the same high level that they can communicate to other programmers, and the resulting software artifacts would be clear and concise enough that they obviously have no bugs instead of having no obvious bugs.
My research is aimed at achieving this future. As such, the thread that connects all of my research is language tools and features that enable programmers to write clear, concise and elegant code and do so without sacrificing other things like performance. I view this as key to improving programmer productivity and code comprehension and allowing programmers to more effectively design and implement programs. These also have positive effects on other research areas. For example, better languages and tools can make it easier to detect security vulnerabilities or prevent them in the first place, and better languages and tools can also make programming more approachable and aid in computer-science education. The future I describe is a ways off, and I might not see it in my lifetime, but it is a future that I am excited to work towards.
My Mentoring Style
How would you describe your mentoring style in terms of freedom given to your students?
Selecting Research Topics?
How do you guide your PhD students in selecting research topics?
Setbacks / Challenges
How do you handle setbacks or challenges faced by your PhD students?
Feedback
How do you give feedback on your students’ thesis drafts and progress?
Consultation Frequency
How often do you typically meet your PhD students one-on-one for consultation?
Research Group Meetings
How often do you typically hold lab meetings where your PhD students present their research work to the class?