A JVM Does That?
I worked on the HotSpot JVM for nearly 15 years, and I’m still constantly amazed as to what goes on inside them. High quality GCs, compilers, uniform threading & memory models, a cost model for code, dynamic code loading, introspection & reflection, access to the OS & hardware resources, a huge pre-built library. Where did all these services come from? Why are they here… and more importantly: when do they fail? What are the limitations we live with in the JVM? What services would we like to have (but cant & here’s why)?