Quick Start Guide
Basic Usage
First, import LatenPy:
from latenpy import latent
Define latent functions using the
@latentdecorator:@latent def add(a, b): return a + b @latent def multiply(a, b): return a * b
Create computation chains:
# These operations are not computed yet result1 = multiply(2, 3) result2 = add(result1, 10)
Compute results when needed:
# Computation happens here final_result = result2.compute() print(final_result) # 16
Caching Behavior
Results are automatically cached:
# First computation
result = expensive_calculation(10)
value1 = result.compute() # Takes time
# Second computation (instant)
value2 = result.compute() # Returns cached result
Working with Dependencies
LatenPy automatically tracks dependencies:
@latent
def square(x):
return x * x
@latent
def sum_squares(a, b):
return square(a) + square(b)
result = sum_squares(3, 4)
print(result.compute()) # 25
Visualizing Computations
You can visualize the computation graph:
result = sum_squares(3, 4)
G = result.get_dependency_graph()
result.visualize() # Shows the computation graph