Hacker News new | ask | show | jobs
by FxChiP 5394 days ago
You keep saying "without using a vm/jit" like it's something Apple did, but in reality, Rosetta is a JIT and not every Mac OS X binary for PPC was a Universal one (which, incidentally, caused a few problems when Rosetta's translation wasn't up to par, either).

Also, .NET is "portable" not just across Windows releases, but through the work of Mono large portions of it also work on Linux, and on other architectures via Linux as well -- so presumably, anywhere Mono or Microsoft's official .NET are compiled, .NET will run so long as no weird x86- or binary-specific things (like P/Invoke) are done. There are other problems with Mono, however, but those are for another discussion.

1 comments

This is true that Rosetta is a JIT, but my point was more that the Mach-O binary format allows for multiple architecture binaries, therefore somewhat obviating the need for a jit.

The only use Rosetta served was running cross architecture binaries.

Mono also doesn't run the full .NET stack, e.g. think the Netflix drm components, so I can't quite consider it cross platform. Cross platform windows wise sure, but that isn't saying much.