Possibly related questions:
- Generating ARM code for a managed assembly on an Intel machine
- Why has .NET-code to be compiled for multiple platforms
- Windows RT .NET compatability; I am not convinced this fully answers my question, but it does answer another, slightly related question I had.
I come from the land of cross-platform languages. I'm pretty decent at Python and abysmal but productive with Java. I know that a .pyc file will, more or less, work on any system that runs the same version of Python, and that a .jar file will, more or less, run on any machine that runs Java (excluding literal toasters). I am wondering if .msil files will work similarly in .NET environments.
So to fully extrapolate on my question:
While x86 is currently the dominant architecture, there are Windows machines out there that run on ARM. Will a Visual Basic file (or, more generally, a file that uses the .NET framework) compiled to MSIL run natively on an ARM-powered Windows machine? e.g. Windows Phone, or one of the RT tablets. EDIT: Also wondering if these files will run natively in Mono, as I just learned that that is a thing. EDIT: Is it generally better to ship code to be compiled later or pre-compiled code?
If I am not understanding what an MSIL file is, I apologize. I'm going off the tetbook for my class next quarter, and I might just be misunderstanding what MSIL is.