The document discusses implementing dynamic programming languages in virtual machines. It argues against directly writing virtual machines in low-level languages like C, which can limit flexibility, maintainability and performance. Instead, it advocates writing interpreters in high-level languages and using meta-programming techniques to automatically generate virtual machines from these interpreters through translation. This approach aims to achieve flexibility, simplicity and performance together for language implementations.