Function identity of non-configurable accessors

Andreas Rossberg rossberg at
Wed Dec 19 05:43:06 PST 2012

On 18 December 2012 20:24, Allen Wirfs-Brock <allen at> wrote:

> To me, as a application programmer or even a library programmer,
> enforcement of these invariants are generally unnecessary. If enforcement
> impacts performance or expressibility they have a negative impact on my
> ability to get my job done.

I take issues with the dichotomy you build up here. It's important to note
that enforcement _is_ a form of expressiveness! Unfortunately, one that is
too often overlooked.

Expressiveness is defined by what a piece of code can do, as well as,
dually, what a piece of code can enforce its context _not to_ do. If I
cannot prevent things from happening then I generally have to work around
that by defending against them manually and potentially everywhere.

Moreover, as an application or library programmer I constantly need to
enforce certain things, _especially against myself_. Any smart programmer
knows that his own stupidity is most likely to outsmart him.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the es-discuss mailing list