Whichever way Microsoft ultimately decides to go regarding Desktop App support on Windows 8 on ARM, no legacy Win32 apps are going to run without work on Windows 8 on ARM. From what I've heard, developers should expect there to be some amount of recompilation/rewriting for any and every "legacy" app to work on Windows 8 on ARM because the ARM instruction set is different from the Intel x86/x64 one.
The key question is exactly how much work will/might be required to get existing Windows apps to work on Windows 8 on ARM. And the answer to that varies, according to developers who are attempting to make educated guesses, given that Windows 8 ARM tablets aren't available to developers and testers (other than the select few affiliated with Microsoft and their OEMs, one would assume).
"While legacy x86 applications won't run on ARM, business applications written using .NET should run unmodified, and — as long as ARM Windows really is Windows, and contains all the things that regular Windows contains — recompiling existing applications to run on ARM should be a relatively trivial affair.
"Applications already ported to support 64-bit processors, a category that includes Microsoft's own Office, will be in a particularly strong position, as their code should already have been purged of any processor-dependent portions."
(For the record, we also don't know for certain whether Microsoft is planning to release Office for Windows 8 on ARM as a Desktop App or a Metro app. Microsoft's Office team also is attempting to maintain the shroud of secrecy as it moves toward delivering Office 2012. CEO Steve Ballmer did hint strongly in September that there could be a Metro-style version of Office coming, however. There also will be a version of Office 2012 that runs on existing x86-based Windows PCs, one would assume.)
A developer contact of mine, who asked to remain anonymous, echoed some of Bright's comments about the potential to move legacy .Net apps to Windows 8 on ARM with relatively little pain:
"If you're a .NET developer, and you stayed in the safe 'managed code' walled garden of .NET, then in theory, you wouldn't have any native code that would bust with ARM under the hood. In fact, Visual Studio has a compile option named 'ANY CPU. Will different flavors of ARM show up there in VS2012? My guess is that they will if you wanted to target ARM and not X86 (not that it makes any sense). However -- and this is key -- there are ways to break out of that safe garden since .NET interops with older code. So I would be careful to imply ALL .Net apps are the same because there is always somebody doing something special. Obviously if programmers use X86 extensions in C++, like the SSE family that Intel pushed during the last few decades, then ARM is going to be painful if there is no equivalent set."
This developer noted that programmers still don't know what the internal architecture of Windows on ARM looks like. Will there be a subset of Win32 -- at least the .Net Common Language Runtime -- in Windows 8 on ARM?
The green side is what the stack looks like for Metro-style apps; the blue is what the stack looks like for Desktop Apps (non-Metro-style apps that aren't optimized for touch).
I haven't done an official tally as to all the feedback I've gotten on Twitter and e-mail as to whether Microsoft should or shouldn't ax the Desktop App environment on Windows on ARM, but I'd say it's running roughly 50/50. Many of those against the move said that the inclusion of an option for non-Metro apps is what will help differentiate Windows 8 from other tablet operating systems.
Any developers have any more to add as to how difficult/easy you're expecting it to be to move existing Windows apps to Windows 8 on ARM -- and whether you plan to do so, or are just counting on going Metro for Windows 8?