code: static double hsla( double h, double s, double l, double a ) {
  
          h = (h % 360) / 360;
          s = clamp(s); l = clamp(l); a = clamp(a);
  
          double m2 = l <= 0.5 ? l * (s + 1) : l + s - l * s;
          double m1 = l * 2 - m2;
  
          return rgba( hslaHue(h + 1.0/3, m1, m2) * 255,
                       hslaHue(h        , m1, m2) * 255,
                       hslaHue(h - 1.0/3, m1, m2) * 255,
                       a);
      }
docs: Create a color value.
  
  @param h
  hue value
  @param s
  saturation
  @param l
  lightness
  @param a
  alpha
  @return a color value as long