Fastlane

Nowadays Web applications, including 3D virtual worlds, real-time simulations, and virtual reality applications demand a high amount of processing power. JavaScript, yet, is inherently single threaded and computationally intensive tasks need to avoid taking exclusive control over this thread for a prolonged time to not stall the entire Web page.

The JavaScript APIs that enable hardware-supported parallelism, such as SIMD.js and Web Worker, however, are by design low-level APIs and subject to hardware specific limitation, unfamiliar programming idioms, and performance portability issues if they are not available on every platform.

Fastlane solves these problems by combining the results of two successful projects, Xflow and shade.js, to provide a compiler-driven adaptive data-flow-programming framework for parallel data processing on the web.

It utilizes data-flow programming, a proven and well-know programming idiom for data processing, to define a series of data-transformations, each written in a valid subset of JavaScript. The provided data-flow graph is then analyzed and compiled into optimized JavaScript or GLSL shader code, considering all APIs available on the current system. This alleviates the necessity for the developer to define multiple versions of the same computation for different combination of available APIs and platform features.