Computer programmer at Apple
Hi. My name is John McCall, and this is my website. As you might have guessed from its hosting on github.io, it is primarily a professionally-focused website, although I have no intention of promising to keep it exclusively technical.
My professional career has largely been devoted to the design and implementation of programming languages, almost entirely at Apple, where I have worked since June of 2008. My work is currently centered on Swift, for which I am the chair of the Language Steering Group and a code owner for many major systems in the language, including the lowering of type-checked programs to Swift’s internal representation SIL, the lowering of SIL to LLVM IR, and many parts of the language ABI and runtime. In addition, I am a code owner on the Clang project, for which I helped bring up or redesign several major systems, including the support for C++. I also retain design responsibilities for several other language technologies at Apple, including Objective-C and many of Apple’s language extensions to C. (I don’t have exclusive authority over any of these things, though, because that’s not things like that work in well-managed organizations.)
I’ve lived in New York City since the beginning of 2016, working remotely for Apple. Previously, I commuted to Cupertino from San Francisco. I was a doctoral student in Computer Science at Portland State University from 2006-2008, but I left with a M.S. when I decided to take the job at Apple. Before that, I worked for several years as a Java programmer at a distributed data visualization company in Pittsburgh following my graduation from Carnegie Mellon with a B.S. in Mathematics and Computer Science in (winter) 2003. I grew up mostly in Richmond, Virginia, but spent several years in Virginia Beach before college, and I was born in southern Oregon. My family is from California and North Carolina.