code: func funcDeriv(vals []Value, args Expressions, enh *EvalNodeHelper) Vector {
  	mat := vals[0].(Matrix)
  
  	for _, samples := range mat {
  		// No sense in trying to compute a derivative without at least two points.
  		// Drop this Vector element.
  		if len(samples.Points) < 2 {
  			continue
  		}
  
  		// We pass in an arbitrary timestamp that is near the values in use
  		// to avoid floating point accuracy issues, see
  		// https://github.com/prometheus/prometheus/issues/2674
  		slope, _ := linearRegression(samples.Points, samples.Points[0].T)
  		enh.out = append(enh.out, Sample{
  			Point: Point{V: slope},
  		})
  	}
  	return enh.out
  }
docs: // === deriv(node ValueTypeMatrix) Vector ===