From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: function Is_Open (File : File_Type) return Boolean; :Text_io
Date: Wed, 28 Oct 2015 22:02:13 +0100
Date: 2015-10-28T22:02:13+01:00 [thread overview]
Message-ID: <ki9oomfymbau.ckpvghtqa42n.dlg@40tude.net> (raw)
In-Reply-To: 87d1vy3f46.fsf@theworld.com
On Wed, 28 Oct 2015 16:36:09 -0400, Bob Duff wrote:
> "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de> writes:
>
>> On Wed, 28 Oct 2015 12:06:33 +0100, Georg Bauhaus wrote:
>>> However, another use of predicates is to document assumptions.
>>
>> Documenting *shall* have *no* run-time effects.
>
> Really?!
>
> In C, we can write:
>
> int num_gizmos = 0; // num_gizmos is always between 0 and 1024.
>
> In Ada, we can write:
>
> type Gizmo_Count is range 0 .. 2**10;
> Num_Gizmos: Gizmo_Count := 0;
>
> IMHO, documenting the 0..1024 requirement in executable code is much
> better than using a comment:
How is that documenting? It is a direct instruction to the compiler.
Documentation is addressed to the human reader.
The advantage of Ada over C is that where in Ada you can instruct, in C the
only way is to document.
> By the way, what exactly do you mean by "shall"? A native speaker of
> English doesn't usually use that word, except in legal documents and the
> like. You seem to use the word "shall" to express opinions about the
> way things ought to be, which seems like an odd usage to me.
OK
--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
next prev parent reply other threads:[~2015-10-28 21:02 UTC|newest]
Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-26 10:00 function Is_Open (File : File_Type) return Boolean; :Text_io comicfanzine
2015-10-26 11:27 ` Simon Wright
2015-10-26 13:25 ` comicfanzine
2015-10-26 18:01 ` Simon Wright
2015-10-26 19:03 ` AdaMagica
2015-10-27 11:30 ` Simon Wright
2015-10-26 18:02 ` Jeffrey R. Carter
2015-10-26 13:28 ` comicfanzine
2015-10-26 15:07 ` Jacob Sparre Andersen
2015-10-26 16:37 ` AdaMagica
2015-10-26 20:46 ` J-P. Rosen
2015-10-27 8:42 ` comicfanzine
2015-10-27 11:34 ` Simon Wright
2015-10-28 13:32 ` comicfanzine
2015-10-27 8:51 ` comicfanzine
2015-10-27 17:15 ` Jeffrey R. Carter
2015-10-26 22:48 ` Bob Duff
2015-10-27 8:30 ` Dmitry A. Kazakov
2015-10-27 13:30 ` Bob Duff
2015-10-27 14:00 ` G.B.
2015-10-27 15:26 ` Dmitry A. Kazakov
2015-10-27 16:43 ` G.B.
2015-10-27 20:04 ` Dmitry A. Kazakov
2015-10-28 11:06 ` Georg Bauhaus
2015-10-28 17:58 ` Randy Brukardt
2015-10-28 18:20 ` Dmitry A. Kazakov
2015-10-28 20:36 ` Bob Duff
2015-10-28 21:02 ` Dmitry A. Kazakov [this message]
2015-10-29 11:25 ` AdaMagica
2015-10-29 13:37 ` Dmitry A. Kazakov
2015-10-29 17:57 ` AdaMagica
2015-10-29 18:12 ` AdaMagica
2015-10-29 18:26 ` Dmitry A. Kazakov
2015-10-30 8:27 ` Jacob Sparre Andersen
2015-10-30 9:11 ` J-P. Rosen
2015-10-29 11:47 ` G.B.
2015-10-29 13:01 ` J-P. Rosen
2015-10-29 14:00 ` Dmitry A. Kazakov
2015-10-30 1:06 ` Georg Bauhaus
2015-10-30 8:39 ` Dmitry A. Kazakov
2015-10-30 14:32 ` G.B.
2015-10-30 16:20 ` Dmitry A. Kazakov
2015-10-30 19:07 ` G.B.
2015-10-31 9:31 ` Dmitry A. Kazakov
2015-10-31 11:17 ` Georg Bauhaus
2015-10-30 14:40 ` G.B.
2015-10-30 16:26 ` Dmitry A. Kazakov
2015-10-28 20:07 ` Bob Duff
2015-10-28 20:59 ` Dmitry A. Kazakov
2015-10-27 14:02 ` G.B.
2015-10-27 15:10 ` Dmitry A. Kazakov
2015-10-27 16:41 ` G.B.
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox