Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: Notesfiles; site ea.UUCP
Path: utzoo!watmath!clyde!floyd!vax135!houxz!houxm!ihnp4!inuxc!pur-ee!uiucdcs!ea!mwm
From: mwm@ea.UUCP
Newsgroups: net.lang
Subject: Re: Re: Gotos; tail-recursion - (nf)
Message-ID: <5400009@ea.UUCP>
Date: Sun, 17-Jun-84 21:59:00 EDT
Article-I.D.: ea.5400009
Posted: Sun Jun 17 21:59:00 1984
Date-Received: Thu, 21-Jun-84 06:07:42 EDT
References: <1986@mit-eddi.UUCP>
Lines: 24
Nf-ID: #R:mit-eddi:-198600:ea:5400009:000:982
Nf-From: ea!mwm    Jun 17 20:59:00 1984

#R:mit-eddi:-198600:ea:5400009:000:982
ea!mwm    Jun 17 20:59:00 1984

/***** ea:net.lang / denelcor!neal / 10:19 am  Jun 13, 1984 */
>	There are *no* bad language constructs, merely bad uses for them.

	For this reason, I consider language constructs (or any other
environmental features) "bad", or at least "attractive nuisances", if they
make it easy to develop a program but hard to maintain it.

				Neal Weidenhofer
/* ---------- */

I don't see any contradiction in this. A claim a construct is good if
it makes it easier for me to code an algorithm; meaning that it is close
to the way I think of the algorithm. You claim an construct is bad if
it makes a program easy to develop but hard to maintain. By my definition
of "easy to develop", there should be no such constructs. A construct
that is close to the way you think about an algorithm should be both
easy to develop and maintain, and one that is hard to maintain should
be (in some sense) far from the way you think of the algorithm, hence
it should make developing code harder.