DConf 2014 Day 2 Talk 2: Refactoring JIT Compilation by Maxime Chevalier-Boisvert

Higgs, a JIT compiler for JavaScript written in D, was presented at DConf 2013. Basic block versioning, a novel optimization technique in early stages of testing at the time, was also introduced. Experimental results demonstratring how basic block versioning fares on multiple metrics across a variety of benchmarks can now be shown. We discuss how we have interpreted these results to inform further development of Higgs and introduce a JIT compiler architecture based on the idea of lazy/incremental compilation and inlining. We also explore how D has influenced the development of Higgs and take a more in-depth look at how various D features such as templates and CTFE are used in the Higgs implementation.

Related Talks

Functional programming patterns for the non-mathematician (cut)

Functional programming patterns for the non-mathematician (cut)I hit on some practical use cases for functors/applicatives/monads. Pretty fast and quick run through of everything, but you can't learn the world in 30 min. Hopefully, people get some intuition or a better concrete understanding - enough to play with the code. here github.com/DrBoolean/patterns_talk ...

Atmosphere 2013: "Your CSS is a Mess" Jonathan Snook (Shopify)

Atmosphere 2013: "Your CSS is a Mess" Jonathan Snook (Shopify)We would like to thank everyone for attending the first edition of Atmosphere Conference, which was held on the 13th-14th May 2013 in Concordia Design in Poznan. Considering the fact that the event was organised for the first time, we must admit that there was a great number of attendees ...

Loop like a native: while, for, iterators, generators

Loop like a native: while, for, iterators, generatorsNed Batchelder Python provides powerful primitives for iterating over your data in ways that let you express yourself clearly and directly. But even programmers familiar with the tools don't use them as fully as they could. This talk will cover Pyt ...

DjangoCon EU 2013: Steven Holmes - Does your stuff scale?

DjangoCon EU 2013: Steven Holmes - Does your stuff scale?Videos from DjangoCon Europe 2013 are kindly provided by Heroku, a cloud application platform -- a new way of building and deploying web apps: http://heroku.com/ ...

Transforming Code into Beautiful, Idiomatic Python

Transforming Code into Beautiful, Idiomatic PythonRaymond Hettinger Learn to take better advantage of Python's best features and improve existing code through a series of code transformations, "When you see this, do that instead." ...

Paul Irish, "Delivering the goods" - Fluent 2014 Keynote

Paul Irish, "Delivering the goods" - Fluent 2014 KeynoteFluent 2014, "Keynote With Paul Irish". About Paul Irish (Google): Paul Irish is a front-end developer who loves the web. He is on Google Chrome's Developer Relations team as well as jQuery's. He develops the HTML5 Boilerplate, the HTML5/CSS3 feature detection library Modernizr, HTML5 Please, CSS3 Please, and other bits and bobs of ...

John Papa - 10 AngularJS Patterns - Code on the Beach 2014

John Papa - 10 AngularJS Patterns - Code on the Beach 2014Learn from John Papa's talk "10 AngularJS Patterns" from Code on the Beach 2014 at One Ocean Resort & Spa, Atlantic Beach, Florida. Sunday, August 10, 2014. www.codeonthebeach.com Abstract: "Once you get beyond the AngularJS basics there are many decisions to be made on how to build robust and maintainable apps. Come ...

Superoptimizing LLVM

Superoptimizing LLVMCompilers are caught in a tug-of-war between increasingly exotic architectures and instruction set extensions on one hand, and our desire for advanced programming languages and PL features on the other. A multi-language, multi-target compiler infrastructure such as LLVM ameliorates the situation somewhat, but engineering fast, effective and correct optimizations for ...

Making things with maths - Steven Wittens

Making things with maths - Steven WittensThe browser used to be a meek sandbox, shut off from all the things that native apps could do. But now we've grown up, and with WebGL, Canvas, Web Audio, Device Access and more, we have a lot of power at our fingertips. To really unlock this potential and make ...