Of particular note is his work creating Hash Array Mapped Tries (aka functional associative arrays) detailed in http://lampwww.epfl.ch/papers/idealhashtrees.pdf and implemented in Haskell, Clojure, Scala and Rubinius. His latest work involved lock-free versions called CTrees[1] that are likely to create more waves as others become familiar with them.
Phil Bagwell's VList is a really cute data structure. It's an immutable list with O(1) cons and cdr, lookups that are expected constant time and O(lg n) worst-case time, and better cache locality than linked lists. The wikipedia entry is short and understandable, which makes it easy to honor the dead in a pleasant and enlightening way:
Might I inquire how/of what? I know it shouldn't matter, but I'm always curious when the cause of death is not listed. I've read too many of these where smart people decide to leave us of their own accord. WikiPedia was no help.
That's just the animal inside you that's hungry for gossip talking, because it really doesn't matter. And I know you'll come up with some kind of rationalization for wanting to know, but you should respect the wishes of family and close friends, whatever the reasons may be, especially because it really does not matter, the loss being the same with or without the reason your gossip-hungry brain may expect.
Indeed, this has nothing to do with gossip, but everything with the prevalence of depression & burnout in the tech field. It was addressed by Joel from Fog creek several years ago.
Phil's ideas on data structures are a critical corner stone in making functional programming easy and practical. Though most people may not have heard his name before, his influence on some computer languages was HUGE.
I had the pleasure of having a very long, beer filled conversation about tech, computer languages and culture with Phil while at ClojureConj in Raleigh last year. He was a very intelligent and charismatic man. It's amazing how sad the death of someone you had only known for a short moment can be.
I never heard of this guy, but after reading this I realized I know about the data structure he invited that is used in Clojure and other functional languages. We should celebrate the important impact he had on technology. His work will live on.
I only met Phil once, but it was his suggestion that led to the formation of Underscore, where I now work. I hoped I'd get a chance to say thanks, but now that opportunity is gone.
I met Phil at Scaladays in 2011. He was such a nice guy. I remember having some ideas about how to improve the efficiency of hash array trie maps for certain cases and types of data and I remember how encouraging our conversation was. He'll be missed.
Of particular note is his work creating Hash Array Mapped Tries (aka functional associative arrays) detailed in http://lampwww.epfl.ch/papers/idealhashtrees.pdf and implemented in Haskell, Clojure, Scala and Rubinius. His latest work involved lock-free versions called CTrees[1] that are likely to create more waves as others become familiar with them.
[1]: https://github.com/axel22/Ctries