4 ms·
How is this "pushing the envelope"? Running existing software in some convoluted browser-based environment, and giving a worse experience in most ways, doesn't
by Pacabel 13y ago
How is this "pushing the envelope"?
Running existing software in some convoluted browser-based environment, and giving a worse experience in most ways, doesn't really seem like innovation to me.
I think we could say it was pushing the envelope if the browser experience was superior to the native experience in every or almost every way. But that just isn't what we're seeing with these demos.
- azakai 13y agoIt is far superior in one major way - everyone has a web browser, and you can give them a link to run your game if it runs on the web. This avoids losing most of your users which is what happens if you ask them to install a plugin or a native app. Of course, on the other hand it is inferior in many ways. It's just another option for game creators (and other apps too). For some it will be useful, for others it will not, just like consoles are useful for some but not for all, tablets are useful for some but not for all, etc. etc.
- stoptalkingshit 13y agoThose are all hardware setups, whereas the browser is a very poorly designed portability layer (viewed in this way). It makes me physically angry how badly the browser vendors have dropped the ball here. It was obvious years ago that things were going this way, but instead of developing a proper application-development standard they just shoved everything into HTML. Every time I hear Mozilla talking about "innovation" I get upset because it is such a blatant lie. You have reinvented to past badly here. The best that can be said is you have been good at marketing the whole thing by constantly pretending that it's "just Javascript" etc, when the end result is completely static (i.e. not Javascript).
- pcwalton 13y ago> The best that can be said is you have been good at marketing the whole thing by constantly pretending that it's "just Javascript" etc, when the end result is completely static (i.e. not Javascript). asm.js executes according to the ECMA-262 semantics, which are the full dynamic semantics of JavaScript.
- stoptalkingshit 13y agoWhat GALL you have to be so willfully dishonest. asm.js is statically typed and has only the most coincidental relationship to Javascript. Just as if I take pointers out of C it is no longer C. What's funny is that you are exhibiting EXACTLY the "nothing to see here" behavior I just described by invoking some completely nominal relationship between Javascript and asm.js. And it is exactly this "nothing to see here" behavior that emphasizes how deep down the web people know they are simply reacting to competitors to retain market share.
- pcwalton 13y agoIf you wrote a C compiler that had special optimizations for a subset of C without pointers, then it would still be a C compiler, and the subset that it optimized for would still be C. (In fact, this is exactly the approach taken with languages like GLSL 1.0, although they added some extensions to make it not C anymore.)
- stoptalkingshit 13y agoI didn't say the Javascript implementations weren't Javascript implementations. Further, you are incorrect. A subset of C cannot be C. Are you dumb? If I make an expression language is this C because C has a little expression language inside it? It is a subset - and also a SUBSET OF AN INFINITE SET OF OTHER LANGUAGES. Hopefully you can understand my anger that baboons are apparently allowed to implement programming languages. They got it wrong with Javascript and did a complete about-turn with emscripten etc in REACTION to competitors. I look forward to laughing at your continued attempts to hide this embarrassing little abortion.
- kivikakk 13y ago> the subset that it optimized for would still be C This doesn't mean to imply the subset is the entirety of C; it means the subset is part of the definition of C — just like you can say "'int x = 4;' is C", even though it's a (demonstration of a) subset of C. The JavaScript which happens to be optimised under the name "asm.js" is still JavaScript that executes in any non-optimising runtime, and the semantics with those optimisations and without are the same.
- drawkbox 13y agoFor distribution and always updating content is where the benefit is (much like an appstore). Flash gaming was huge before mobile for the same reason, simple to play. For the consumer it should be no different except they have an easy url to get to it, maybe saves are a url and there is a bit more security in theory if it is through a plugin that is widely used or tool that is widely used (asm.js). Really this has tried to get going multiple times and really should have. Flash games were huge, Unity web games are coming up. Shockwave games back in 2000ish started it. Being open this is even better because maybe we can see WebGL gaming take off on mobile. 3d games in the browser have changed over time. Quakelive is going desktop client because browsers changing or removing NPAPI for PPAPI (http://www.quakelive.com/forum/showthread.php?34313 http://www.quakelive.com/forum/showthread.php?34313) so maybe this is a good time to go the asm.js/emscripten route as plugin support is getting disrupted.