Function identity of non-configurable accessors

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


On 18 December 2012 20:24, Allen Wirfs-Brock <allen at wirfs-brock.com> 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.

/Andreas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20121219/0cc03c12/attachment.html>


More information about the es-discuss mailing list