Microsoft is using a virtual machine approach for Windows RT applications (probably using some variation of .NET), similar to the Android approach with Java. Note that, generally, Android applications run on not only ARM phones and tablets, but also Atom (x86) phones and tablets and MIPS tablets as well (although there are a number of apps with performance code targeted at ARM processors). They announced this when they first released Windows RT and Windows 8, which could both use Windows RT applications. They also said that Windows Phone apps would eventually be compatible as well.