Inspired by Brent Yorgey, I’m finally going public with a draft of my dissertation!
My thesis is that a certain kind of data structures, which I call “lattice-based data structures” or “LVars” for short, lend themselves well to guaranteed-deterministic parallel programming. My dissertation combines material from various previously published papers, making it a three-papers-stapled-together dissertation in some sense, but I’m also retconning a lot of my work to make it tell the story I want to tell now.
When people ask what the best introduction to LVars is, I have trouble recommending the first LVars paper; even though it was only published a year ago, my thinking has changed quite a lot as my collaborators and I have figured things out since then, and the paper doesn’t match the way I like to present things now. So I’m hoping that my dissertation will be something I can point to as the definitive introduction to LVars.1 I’m also generalizing some of our previously published results, now that we know that that’s possible.
The latest draft is here; it’s automatically updated every time I commit to the repo.2 Because I thought it might be useful for draft readers to see my “peanut gallery” comments, I left them in there: notes to myself begin with “LK: ” and are in red, and TODOs are in a brighter red and begin with “TODO: ”. And, as you can see, there are still many TODOs — but it’s more or less starting to look like a dissertation. (Unlike Brent, I’m doing this a little late in the game: I’ve actually already sent a draft to my committee, and my defense is in only three weeks, on September 8. Still, I’m happy for any feedback, even at this late date; I probably won’t turn in a final version until some time after my defense, so there’s no rush.)
If you notice typos or grammatical errors, feel free to put in a pull request. However, I’ll echo Brent in saying that if you have any more substantial comments or suggestions, please send me an email (lindsey at this domain) instead.
Thanks so much for reading!