A library for generating mathematical objects from parameterisations.

E.g. you would like to build a dataclass like:

class MyNetwork(BaseModel):
		weights: Tensor

with weights sampled from a Gaussian distribution (mean and variance).

Cast would let you call something like:

network = MyNetwork.build("{ 'weights': {'mean': 0.0, 'var': 0.1} }")

to build an instance of MyNetwork using a parameterisation of the matrix.