более того, не требуется полностью воспроизводить вычисления. Например если мы ходим пройти по списку и некоторым образом обработать его элементы, то state1 и state2 это указатели на элементы, они оба ходят, но только однократно делается преобразование (предполагаем, что оно идемпотентно).