static get isSupported() {
    if (isSupported !== null) {
      return isSupported;
    }
    this.setupFeatureChecks();
    isSupported = this.isContextMatch(testContext);
    return isSupported;
  }
@desc Kernel Implementation for WebGL.
<p>This builds the shaders and runs them on the GPU,
the outputs the result back as float(enabled by default) and Texture.</p>

@property {WebGLTexture[]} textureCache - webGl Texture cache
@property {Object.<string, WebGLUniformLocation>} programUniformLocationCache - Location of program variables in memory
@property {WebGLFramebuffer} framebuffer - Webgl frameBuffer
@property {WebGLBuffer} buffer - WebGL buffer
@property {WebGLProgram} program - The webGl Program
@property {FunctionBuilder} functionBuilder - Function Builder instance bound to this Kernel
@property {Boolean} pipeline - Set output type to FAST mode (GPU to GPU via Textures), instead of float
@property {string} endianness - Endian information like Little-endian, Big-endian.
@property {string[]} argumentTypes - Types of parameters sent to the Kernel
@property {string|null} compiledFragmentShader - Compiled fragment shader string
@property {string|null} compiledVertexShader - Compiled Vertical shader string
@extends GLKernel