En lenguajes imperativos, es trivial diseñar una prueba de programación del uso del lenguaje de "semántica de valor" o "semántica de referencia". Se podría hacer lo siguiente y verificar el valor de a(where Vertex {one, two, three :: Integer}): a := Vertex 3 4 5 b := a one b := 6 two b := 8 three...