Last year we presented details on some security problems in the implementations of two well known Smalltalk VMs and showed how this lead us into writing a live and working documentation of the JIT nativizer in Smalltalk. We kept working on the project and pushed it even further, understanding the objects formats, memory spaces and semi-spaces, GC and how to interact with the OS. In the process, we kept implementing everything in Smalltalk, with the utopian goal of, some day, finishing a whole VM. In this talk we will show you some problems we had to deal with, how far we've got and, explaining you how we are already using our code as functional parts of a preexisting Smalltalk environment, we'll try to convince you why we are not after an utopia, and why we expect to have a JIT Smalltalk VM written and compiled with itself in the near future.
Part 1 Part 2