add function

Implementation

Tensor<Scalar> add(Tensor<Scalar> a, Tensor<Scalar> b) {
  Tensor<Scalar> out = Tensor<Scalar>(a.data[0] + b.data[0]);

  out.creator = Node(
    [a, b],
        () {
      a.grad[0] = a.grad[0] + out.grad[0];
      b.grad[0] = b.grad[0] + out.grad[0];
    },
    opName: 'add',
    cost: 1,
  );
  return out;
}