A graph implementation based entirely on functions. This text is about the implementation of a Go tool based entirely on functions β the API contains only immutable data types, and the code is built on top of a struct with five function fields. Itβs a tool for building virtual graphs. In a virtual graph no vertices or edges are stored in memory, they are instead computed as needed. The tool is part of a larger library of generic graph algorithms.