If porting Intel compiled binaries (dll/exe) to ARM is as easy as this article makes it look, then Microsoft has some explaining to do about Windows RT and legacy apps compatibility.
It is similar in a sense to Wine, how it is not a port of Wine. It is currently under development.
It is not an emulator in VMware/VirtualBox's sense of emulation. However it does implement small subset of Windows APIs, so it is a porting layer.
Apparently winulator just translates the windows api calls to the proper (native) android function, however why wouldn't you just port wine to android then? you'd probably just need to add a few missing posix functions, according to: http://mobilepearls.com/labs/native-android-api/STABLE-APIS....
If they were written in a portable language like C, maybe, but you will have to recompile them. I think the point of their WCH tool is to rewrite the machine code from x86 to ARM without having the source code, so it's a much harder problem than recompiling.
It's one thing to port a specific application and work out all of the kinks. It's another thing entirely to claim that millions of different applications will be able to make the transition. Even the article points this out: Winulator isn't compatible with Starcraft: Brood War yet. It's a work in progress (each game requires specialized tweaking in order to work).
Microsoft is not willing to tweak every single application to make sure it works on Windows RT, and neither are the developers of most of those programs.
I agree that making a port to ARM architecture is a process and will never be perfect. What I meant was that making it possible to run legacy apps (even if it is only the top 100 most popular ones) will go a long way towards making Windows RT tablets more popular. If it is possible to make a DirectX audio/video application like SC:BW run (seemingly well) on Android, then it should not be so hard to do normal apps like archivers(winrar/7zip) or media players (VLC).
Perhaps the problem is performance - the original StarCraft ran on a 100Mhz CPU with 16MB RAM.
You just picked two of the more difficult apps to emulate or ahead-of-time translate as your examples of "normal" apps that should be "not so hard!"
Archivers generally have highly optimized compression/decompression routines, which generally means more esoteric instructions and in some edge cases means abusing properties of the microarchitecture to make things faster.
Media players have the same optimized-code issue that archivers do (via codecs), but on top of that demand very accurate audio/video synchronization and support a wide variety of output formats and hardware, which means that media players often add difficult-to-translate display and audio output pipeline hacks on top of difficult-to-translate optimization.
Starcraft I ran on x86 CPUs without MMX or SSE, and I wouldn't be surprised if it didn't use x87 floating point either although I'm venturing into speculation territory there. Plus, Starcaft I used DirectDraw and what amounts to a framebuffer - the easiest possible output device to emulate.