fluid:
functional language for understanding and interacting with dependencies

Digital technology is transforming the way scientists generate, evaluate and communicate knowledge. Fluid is a functional programming language which makes computational artefacts such as charts, figures and statistical analyses more transparent and explorable. A reader can discover how views relate to each other and to the underlying code and datasets, without the author of the chart having designed this feature into the chart explicitly. In particular, we can link charts to other charts, so that the reader can select data elements and have the relevant parts of the chart be automatically highlighted, and vice versa.

Visualisation libraries such as Bokeh and spatial analytics applications like GeoDa provide limited support for this kind of linking, but usually only for specific predefined visualisations, or with substantial programmer effort. Fluid takes a principled approach to the linking problem, through a runtime that makes linking automatic, application-agnostic and mathematically robust.