# Research Interests My research interests include programming languages, persistent memory (NVM), dynamic program analysis, and data race detection. I am currently working on novel methods for providing efficient persistent transactions with strong guarantees. Our work uses non-volatile memory, such as Intel Optane Memory, combined with commodity hardware transactional memory to allow programs to survive power interruptions and crashes, with minimal performance and scalability impacts. # Publications
## Crafty: Efficient, HTM-Compatible Persistent Transactions
Kaan Genç, Michael D. Bond, and Guoqing Harry Xu
ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2020), Online, June 2020
[Talk](https://www.youtube.com/watch?v=wdVLlQXV1to) [Paper](https://dl.acm.org/doi/10.1145/3385412.3385991) [Extended Paper](https://arxiv.org/pdf/2004.00262.pdf) [Implementation](https://github.com/PLaSSticity/Crafty) [Poster](/extra/Crafty Poster.pdf)
## Dependence Aware, Predictive Unbounded Predictive Race Detection
Kaan Genç, Jake Roemer, Yufan Xu, and Michael D. Bond
ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 2019), Athens, Greece, October 2019
[Talk](https://www.youtube.com/watch?v=YgZWnc31tVQ) [Paper](https://dl.acm.org/doi/10.1145/3360605) [Extended Paper](https://arxiv.org/pdf/1904.13088.pdf) [Implementation](https://github.com/PLaSSticity/SDP-WDP-implementation) [Poster](/extra/DepAware Poster.pdf)
## SmartTrack: Efficient Predictive Race Detection
Jake Roemer, Kaan Genç, and Michael D. Bond
ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2020), Online, June 2020
[Paper](http://web.cse.ohio-state.edu/~mikebond/smarttrack-pldi-2020.pdf) [Extended Paper](https://arxiv.org/pdf/1905.00494.pdf)
## High-Coverage, Unbounded Sound Predictive Race Detection
Jake Roemer, Kaan Genç, and Michael D. Bond
ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2018), Philadelphia, PA, USA, June 2018
[Paper](http://web.cse.ohio-state.edu/~bond.213/vindicator-pldi-2018.pdf) [Extended Paper](http://web.cse.ohio-state.edu/~bond.213/vindicator-pldi-2018-xtr.pdf)
# Teaching Experience During Autumn 2017 and Spring 2018 semesters, I had the opportunity to teach the class [CSE 2451](http://coe-portal.cse.ohio-state.edu/pdf-exports/CSE/CSE-2451.pdf), Advanced C Programming, at the Ohio State Univerity. The class had around 35 students enrolled for both semesters. I was given the full responsibilities for the class, including teaching the class, writing assignments and exams, grading, and holding office hours. I revised the course material I was given, making it more comprehensive and adding unique insights on building and optimizing advanced C programs. The students were satisfied with my teaching, with my Student Evaluation of Instruction mean scores being 4.6 and 4.4 out of 5 for both semesters, a score above the university mean for classes of similar size. I am currently teaching this class again for the Spring 2021 semester. # Activities [OOPSLA 2020](https://2020.splashcon.org/track/splash-2020-Artifacts) Artifact Evaluation Committee member [ASPLOS 2021](https://asplos-conference.org/2021/) Artifact Evaluation Committee member
# Other stuff ![A picture from a 3-D video game, showing a river flowing into the sea. The text "The Land Itself" is overlayed on the sea.](/img/game-cover.jpg)\ In my free time, I develop small indie video games and release them open source.