Programming Languages are what I’m interested in, from tinkering on existing main stream languages, to developing new programming abstractions based on operational fragments of logic, process calculi or other declarative modes of programming. I’ve contributed in building high-level programming abstractions as full-fetch compilers and interpreters (in Haskell, Python and Scala), as well as my current favorite, combinator libraries hosted by popular languages with support for functional programming methodologies (e.g., Scala, Haskell). While concurrency abstractions was the main focus in my previous works, I’m currently developing programming abstractions for new domains, most notably test scripting/generation for Android apps, and data flow infrastructure building for large scale program analysis pipelines.

Currently, I’m a research scientist in the Programming Languages and Verification Group at  University of Colorado Boulder. Prior to moving to Boulder, I was a researcher and done my postdoc studies at Carnegie Mellon University in Qatar. Once upon a time, I was a senior software engineer at Circos Brand Karma, where we developed social media analytics tools specifically for the hospitality industrial. Traveling further back in time from there, I was a PhD student in National University of Singapore.

Here is my CV: [PDF]

Still got more questions about me or my work? Got a comment on my choice of font? Or just want to argue about what we can do with soy sauce and ketchup? Please email me!