Blog

Utomata 0.1.0 Beta

Utomata Splash

Utomata is a programming environment for building systems that unfold across space and time. Its basic units are fields, formations and viewports: computational structures that can interact, transform, render, and feed back into one another. From these few ideas, Utomata can describe a wide range of procedural, emergent and simulation-based processes.

The environment is designed around exploration. Programs are composed from independently updating parts, so they can be changed while they are running. Field computation executes in parallel on the GPU, making the same systems useful for live experimentation, high-frequency simulation and automated offline runs.

Utomata is intentionally small. The language tries to expose the structure of a system without requiring much of the machinery normally needed to implement it. The aim is to make complex computational behaviour something that can be sketched, modified, tested and shared as directly as possible.