4 ms·
It doesn't really matter that the code is unintelligible. One can use higher-level languages on top. What isn't so good is that NaCl targets the architecture o
by weavejester 16y ago
It doesn't really matter that the code is unintelligible. One can use higher-level languages on top.
What isn't so good is that NaCl targets the architecture of the host machine. So you're not going to be able to run a NaCl app compiled on x86 on a browser running under ARM. Someone please correct me if I'm wrong.
Miguel suggesting CLI isn't exactly surprising ;), but personally I'd prefer to use a sandboxed VM based on LLVM. CLI makes too many assumptions about the architecture of your language, whilst LLVM is more low-level.
- nimrody 16y agoRegarding LLVM -- See the comment about PNaCl (Portable Native Code Client). This is portable code based on LLVM intermediate representation.
- Detrus 16y agoYou can compile your binary for multiple architectures, check the type of processor and give it the appropriate binary. They also have the LLVM option so that old binaries keep working on new architectures without recompiling and rewriting NaCl for them, but it has downsides http://blog.chromium.org/2010/03/native-client-and-web-portability.html http://blog.chromium.org/2010/03/native-client-and-web-porta... The reason they didn't go with LLVM as the main approach was performance. Google wants there to be no distinction between desktop and web apps, and for web apps to have even 60% of desktop performance is still unacceptable. 90+% is more like it.
- weavejester 16y agoIt's good to know that there's work being done in marrying LLVM to NaCl. Even 60% performance seems a very fair trade-off for low-level, platform-neutral, sandboxed binaries.