Dan Ott

Immutability

Posted on April 26, 2016

Some things never change

There are two places I’ve encountered conversations of immutability. Software design and theology. Immutability is spoken of fondly in both.

In software immutability means values never change once assigned. This quality makes programs approachable, predictable, and reliable.

In theology immutability means God is the same yesterday, today, and forever. This quality makes God approachable, predictable, and reliable.

The interesting part of software is when things need to change. If inputs to programs never change than computation isn’t necessary. Mutation of inputs is present in any interesting problem. The mutable parts of the system rely on the immutable qualities of the system to provide the solution.

In theology I’m beginning to think that humans are the mutable inputs. I definitely introduce interesting problems. And not only are we able to change but we must. Some might refer to this mutation as repentance. Others might call it course correcting. The interesting problems of my life have found resolution by mutating my attitudes and actions in ways that rely on the immutable qualities of how relationships are designed to work.

I’ve resisted pressing publish on many ideas over the years because of perfectionism. Perfectionism is the desire of the mutable to characterize immutability. The desire to be 100% complete, accurate, and unchanging. It refuses to acknowledge that course corrections are available. It pretends that repentance isn’t an option after better information becomes available.

Stability and integrity are expected in some parts of life. My immutable commitment to my spouse and children needs to be unchanging and trustworthy. In the macro this isn’t an area that should be open to change. In the micro I should be constantly changing to improve the reliability, predictability, and availability of the father-husband system.

Functional programs benefit from isolating and carefully managing the mutable parts of the system. Maybe that’s how our lives are supposed to be. Some immutable attributes that others can rely on. Some mutable attitudes that are attended to, evaluated, and changed out as necessary.

Some things never change to demonstrate their virtue. Some things never change to facilitate their stubborn demise. Knowing what to change, when to change it, and why is the challenge of mutability.