comp.lang.ada
 help / color / mirror / Atom feed
From: "Jeffrey R. Carter" <spam.jrcarter.not@spam.not.acm.org>
Subject: Re: Someone loves PHP...
Date: Fri, 27 Nov 2015 10:59:17 -0700
Date: 2015-11-27T10:59:17-07:00	[thread overview]
Message-ID: <n3a5h6$8jl$2@dont-email.me> (raw)
In-Reply-To: <n39d6d$m18$1@speranza.aioe.org>

On 11/27/2015 04:01 AM, Nasser M. Abbasi wrote:
> 
> 1) A language must be predictable.
> 2) A language must be consistent.
> 3) A language must be concise.

I don't completely agree. A language must be readable and easy to understand.
Conciseness is desirable when it doesn't detract from or enhances those
properties, but often it is the opposite.

Use clauses are an example of this. They promote conciseness, and when writing
such code it seems quite easy to read and understand. But decades of experience
have shown that such code is often more difficult to read and understand when I
come back to it a few months later than if I had not used use clauses. As a
result, I have become mostly use-averse, and have strict guidelines on when to
use them.

> 4) A language must be reliable.
> 5) A language must be debuggable.

Again, I don't really agree. A language must minimize opportunities to make
errors. Debugging in most languages consists of finding things that don't
manifest until run time, and then as incorrect behavior, most of which would be
caught by the compiler for a well designed language, and most of the rest would
be caught by run-time checks for things not practical to detect at compile time.
What remains are usually logic errors, and traditional debugging is not very
helpful for those, unless you think of it as debugging your own thought processes.

-- 
Jeff Carter
"My legs are gray, my ears are gnarled, my eyes are old and bent."
Monty Python's Life of Brian
81

  reply	other threads:[~2015-11-27 17:59 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-26 21:38 Someone loves PHP mockturtle
2015-11-27 11:01 ` Nasser M. Abbasi
2015-11-27 17:59   ` Jeffrey R. Carter [this message]
2015-11-27 18:31   ` G.B.
2015-11-27 20:58     ` Dmitry A. Kazakov
2015-11-29  8:52       ` Shark8
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox