# OCaml concepts

Source: https://libtmux.org/en/ocaml/latest/concepts/

> Understand immutable observations, window links and typed queries.

Snapshots hold immutable observations. A window can have several session links;
each link retains its own index and context. Process captured collections with
[`Iarray`](<https://ocaml.org/manual/5.5/api/Iarray.html>), [`Seq`](<https://ocaml.org/manual/5.5/api/Seq.html>) and ordinary functions. Typed expressions add inspectable query
data without replacing those collections.

- [Captured object graph](https://libtmux.org/en/ocaml/latest/guides/graph/): Navigate sessions, shared windows, contextual links and panes.
- [Local queries](https://libtmux.org/en/ocaml/latest/guides/queries/): Compose native predicates and typed expressions over captured values.
- [Package boundaries](https://libtmux.org/en/ocaml/latest/guides/packages/): Choose the pure core or optional transports and consumers.
