Follow Slashdot stories on Twitter


Forgot your password?
Firefox Mozilla News

Firefox 18 Beta Out With IonMonkey JavaScript Engine 182

An anonymous reader writes with a quick bite from The Next Web about the latest Firefox beta, this time featuring some under-the-hood improvements: "Mozilla on Monday announced the release of Firefox 18 beta for Windows, Mac, and Linux. You can download it now from The biggest addition in this update is significant JavaScript improvements, courtesy of Mozilla's new JavaScript JIT compiler called IonMonkey. The company promises the performance bump should be noticeable whenever Firefox is displaying Web apps, games, and other JavaScript-heavy pages."
This discussion has been archived. No new comments can be posted.

Firefox 18 Beta Out With IonMonkey JavaScript Engine

Comments Filter:
  • Re:So far (Score:2, Insightful)

    by Cinder6 ( 894572 ) on Tuesday November 27, 2012 @01:15AM (#42102457)

    I find this an odd comment. I definitely notice pages rendering faster, and I can see this effect simply by changing browsers. Some are genuinely faster than others all around, while others have different rules for when they begin to display content.

    With that said, I'm getting kind of tired of all the Firefox posts. Why do we get a post for seemingly every Firefox release, including betas, and no mention at all of Chrome updates? (Note: I'm not advocating for more "stories" about Chrome.) Maybe everyone's still in the mindset of Firefox getting an update only twice a year (or maybe this site's Firefox usage justifies it). Yeah yeah, I know, "don't read it if you don't like it" and all, but it's still a bit perplexing.

  • Re:So far (Score:5, Insightful)

    by epyT-R ( 613989 ) on Tuesday November 27, 2012 @01:17AM (#42102473)

    javascript was never meant to do the things it's being used for now, that's why sites are so damned slow now.

  • Re:So far (Score:5, Insightful)

    by NightHwk1 ( 172799 ) <jon.emptyflask@net> on Tuesday November 27, 2012 @01:28AM (#42102551) Homepage

    What sites are so damned slow? It's not the Javascript in most cases, it's the asset loading. The tubes are still the bottleneck on the web.

    If anything, Javascript is speeding things up. AJAX content updates without a full page refresh are commonplace now, and there are more and more sites that are mostly client-side, using frameworks like Backbone.

  • by detain ( 687995 ) on Tuesday November 27, 2012 @01:38AM (#42102607) Homepage
    Its good to see the focus of this release being an attempt to increase javascript speed by leaps and bounds. Modern webpages often use JS that goes way beyond anything people did 10 years ago (Jquery for example) and the complexities of what people do with javascript noticably slow down most webpages considerably.
  • Re:So far (Score:4, Insightful)

    by Darinbob ( 1142669 ) on Tuesday November 27, 2012 @02:23AM (#42102797)

    Or we just turn back to clock to the good old days where web sites were about presenting information simply with a simple markup language instead of trying to be a full application.

  • Re:So far (Score:3, Insightful)

    by DNS-and-BIND ( 461968 ) on Tuesday November 27, 2012 @02:44AM (#42102893) Homepage
    Because all the speed improvements were used by developers not to give the user a better experience, but to develop ever-more-complex pages. "Look, this new browser is 50% faster. Now, we can make a super-complex web page and still get the old speed!" Repeat for every speed increase.
  • by madsdyd ( 228464 ) on Tuesday November 27, 2012 @04:10AM (#42103225)

    I don't understand why this comment got +5. It is pretty misguided.

    The statement:

    > I realized, you can't speed up assembly language -- It's a perfectly optimized language, there's nothing under the hood to tweak

    makes some limited sense in some contexts (one could argue that the microcode supporting the assembler on the CPU is repeatedly optimized), but none in this. The IonMonkey JIT does essentially optimize the assembler code[*], by rearranging it in various ways to make it faster. E.g. it takes stuff like this (in javascript, as I have not written assembler in years):

    for ( var i = 0; i != 10 ; ++ i ) {
        var foo = "bar";

    and changes it to e.g. this:

    for ( var i = 0; i != 10; ++i ) {
    var foo = "bar";

    possibly then this:

    var foo = "bar";

    This is an optimization and it is performed at assembler level (Again: the above is not meant to be read as JavaScript, but assembler).

    The other statement that really sticks out is this:

    > A sign of a horribly designed language is that the speed of its implementations can be repeatedly increased "by leaps and bounds"...

    This simply highlights that the poster really do not understand the goals behind crossplatform languages, such as Java, Dalvik, JavaScript, lisp, ML, Python, Perl, and so on, or the goals for weakly typed languages.

    [*] It works on an abstract representation of the assembler code, but it might as well have been working directly on the assembler, was it not for the fact that this would require it to learn to many assembler variants.

  • Re:So far (Score:3, Insightful)

    by ArcadeMan ( 2766669 ) on Tuesday November 27, 2012 @10:01AM (#42104905)

    It's not really Javascript's fault, it's all the damn know-nothing Web monkeys out there.

    I'm checking the code of one website at the moment, and they're loading all that crap:
    jquery.js (yes, jquery AGAIN along with some checks to see if it's already loaded -WTF)

    There's also the following inline javascript functions:
    - something to add caption to images on page load (calls caption.js)
    - something to track page views

    Why do they load all this crap? There's an image-changing mouse-over effect on the Facebook and Twitter icon, and a cross-fade of images on the home page. That's it.

    It's no wonder people think Javascript is crap when it's being used by people who don't even understand the kind of overload they're putting on the browsers.

This process can check if this value is zero, and if it is, it does something child-like. -- Forbes Burkowski, CS 454, University of Washington