|
Software engineer focused on programming languages, type systems, and low-level systems. Work spans formal methods, functional programming, and operating systems. Main interests include dependent type theory, proof languages, language interpreters, virtual machines, and minimalist kernels.
- Programming languages and interpreters
- Lambda calculus and type systems
- Dependent types and proof assistants
- Operating systems and kernels
- Virtual machines and emulators
- Massively parallel and functional computation models
- Languages: C, Haskell, Rust, TypeScript
- Formal methods: dependent types, proof development, type theory
- Systems: kernels, virtual memory, system calls, emulation
- Applications: distributed systems, web applications, tooling
|