
Slava Pestov's corner of the web
Hi there! I live in the Hudson Valley of New York with my family, surrounded by various animals.
Feel free to e-mail me for any reason, including potential job opportunities, if you think my skills might be a good fit.
Math
I have some fun results about finitely-presented monoids:
Programming
Apple (2015–)
I spent the last 11 years on the Swift language team at Apple. I am the second-most active contributor to the compiler's git repository.
Most recently, I did some work to speed up Swift's type checker:
Prior to that I came up with and implemented a new design for Swift generics, based on term rewriting:
I wrote a book about the Swift generics implementation:
I also worked on Swift's stable ABI and library evolution model for shared libraries:
I've given a few talks:
Last but not least, I co-authored a handful of Swift evolution proposals:
Google (2010–2014)
I played a key role in the development of firmware and Linux device drivers for a new data center storage device. Also worked on tools to collect and analyze storage performance across Google's fleet.
Factor (2003–2010)
I led the development of the Factor programming language.
Factor is a dynamically-typed programming language with a stack-based syntax, and a heavy emphasis on interactive development, reflection, and simplicity. The implementation includes an optimizing compiler, cross-platform GUI toolkit, and web framework.
A conference paper:
A talk:
jEdit (1998–2003)
I also wrote jEdit, a popular programmer's text editor.
jEdit has a plugin system, built on top of the dynamic features of the Java virtual machine. A tool within the editor can download and install plugins from a central registry. This was an early form of the "package manager" found in many popular text editors and languages today.
This page is best viewed with Netscape Navigator and a dialup modem.