aboutsummaryrefslogtreecommitdiff
path: root/src/value.py
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/value.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/value.py b/src/value.py
new file mode 100644
index 0000000..af0ab35
--- /dev/null
+++ b/src/value.py
@@ -0,0 +1,20 @@
+class Value:
+ def __init__(self, data, _children=(), _op='', label='') -> None:
+ self.label = label
+
+ self.data = float(data)
+ self.grad = 0.0
+
+ self._prev = set(_children)
+ self._op = _op
+
+ def __repr__(self) -> str:
+ return f'Value({self.data})'
+
+ def __add__(self, y):
+ result = self.data + y.data
+ return Value(result, (self, y), _op='+')
+
+ def __mul__(self, y):
+ result = self.data * y.data
+ return Value(result, (self, y), _op='*')