Most programming languages, such as C and C++, are compiled directly into the machine language of a "real" microprocessor (for example, an Intel x86 or DEC alpha). Java takes a different approach. It is commonly compiled into the machine language of the Java virtual machine (JVM). The JVM isn't implemented in its own microprocessor but rather is interpreted on some existing processor. This allows Java to be run on a wide variety of machines, thereby making it highly "platform-independent." Explain why building an interpreter for a virtual machine like the JVM is easier and faster than building a complete Java compiler. What are the disadvantages of this virtual machine approach to compiler implementation?