Researcher interested in functional programming, formal methods, programming languages, and security.
A comprehensive list is available here.
- Lesshand: A shorthand for the 21st century
- cclyzer++: a precise and scalable global pointer analysis for LLVM code
- souffle-lint: A linter for Soufflé Datalog
- treeedb: Generate Soufflé Datalog types, relations, and facts that represent ASTs from a variety of programming languages.
- tree-sitter-souffle: A tree-sitter grammar for Soufflé Datalog
- treereduce: A fast, parallel, syntax-aware test case reducer based on tree-sitter grammars
- tree-crasher: Easy-to-use grammar-based black-box fuzzer
- tree-splicer: Simple grammar-based test case generator
- Publications:
- Bring Your Own Data Structures to Datalog (OOPSLA '23, distinguished paper award)
- Galois Blog:
- MATE: Interactive Program Analysis with Code Property Graphs
- A Visual Guide to Pointer Analysis with cclyzer++: Part 1
- cclyzer++: Scalable and Precise Pointer Analysis for LLVM
- Under-Constrained Symbolic Execution with Crucible
- Introducing GREASE: An Open-Source Tool for Uncovering Hidden Vulnerabilities in Binary Code
- Personal Blog: