Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Where does this "small subset" bit come from? What exactly is it that you see FirefoxOS as being unable to do that other mobile operating systems can?


Not supporting real native apps is a massive lack of very critical functionality.

This alone makes it far more difficult to write apps that perform well, especially those that are doing something that's resource-intensive.

Developers are also limited to basically using JavaScript. Yeah, I know about Asm.js and Emscripten. They're hacks, at best, and nowhere near being proper replacements for actual native app support.


I suspect that your objection to asm.js is primarily that it strikes you as an ugly, byzantine hack, rather than any problem with the practicality of it. It may seem bizarre to encode a cross-platform intermediate representation of low-level code as a subset of JavaScript, but it works. It may still be 2x as slow as native code, but the implementation in SpiderMonkey is still a work in progress. If GCC or LLVM can take a cross-platform IR and generate efficient native code, then why can't SpiderMonkey do the same with asm.js?


Personally, my primary objection is it removes the ability for dedicated application developers like John Papandriopoulos to write marketplace-leading apps like SnappyCam:

https://news.ycombinator.com/item?id=6137979

Many developers working in the area of games or video and graphics decoding/encoding need access to native-level instruction sets to get maximum performance.

Nevermind that I have no desire to attempt to debug my emscripten-translated C/C++ application instead of just debugging the original source.

There's an entire ecosystem around supporting native apps in terms of tooling, debugging, libraries, etc. and FireFox OS seems to ignore all of that.

Personally, I believe FireFox OS will fail in the mainstream market without native application support. I'd love it if they prove me wrong, but ignoring the need for native applications seems like an obvious mistake.

A well-coded native application can make or break its success on having access to the full functionality of the underlying platform.


> Many developers working in the area of games or video and graphics decoding/encoding needs access to native-level instruction sets to get maximum performance.

SIMD work for asm.js is actively underway.

> Nevermind that I have no desire to attempt to debug my emscripten-translated C/C++ application instead of just debugging the original source.

Source maps are designed to solve this problem.

> There's an entire ecosystem around supporting native apps in terms of tooling, debugging, libraries, etc. and FireFox OS seems to ignore all of that.

For tooling, Emscripten offers very close analogues to the native toolchain—you invoke emcc. Since what you write is C, you can use all the static analysis tools, such as clang's static analysis framework, that you're used to. Debugging is currently more difficult, it is true. For libraries, just compile them along with your app with Emscripten.


Dalvik isn't native, but Android doesn't seem to have been hurt by that. Why, then, would Firefox? Native simply isn't critical.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: