comp.lang.ada
 help / color / mirror / Atom feed
From: "Randy Brukardt" <randy@rrsoftware.com>
Subject: Re: Can I treat Current_Output as a file of bytes?
Date: Thu, 7 Nov 2002 15:04:35 -0600
Date: 2002-11-07T15:04:35-06:00	[thread overview]
Message-ID: <usll82bjnmah78@corp.supernews.com> (raw)
In-Reply-To: 4519e058.0211062004.4a55ab0e@posting.google.com

Ted Dennison wrote in message
<4519e058.0211062004.4a55ab0e@posting.google.com>...
>The OP seemed to think that the line break was getting added on the
>"Close" call, if I was reading him correctly. Seeing as this method
>would require calling the exact same "Close" routine, I think you can
>perhaps see the source of my concern.
>
>But you'd certainly know better than I what *should* be happening....

Well, Ada does require that a file be terminated by a line terminator.
Some implementations do actually write this character out if it is
missing. Indeed, the first (Ada 83) version of Text_IO for Janus/Ada
worked this way.

However, users were unhappy with that. Especially so with the page
terminator. You never want to write a page terminator unless it is
explicitly asked for.

Luckily, you don't have to have an explicit page terminator to have the
semantics work right. You just have to "assume" one at the end of a
file. Doing the same for line terminators isn't much additional work,
and doing so eliminates weird behavior at the end of files that don't
have explicit terminators. A lot of the code in Text_IO is there to
handle these cases properly.

IMHO, Text_IO should never write anything on 'Close', and this
discussion (again) shows why. But it is true that some implementations
do. I'd suggest complaining to the vendor if this is a problem.

          Randy Brukardt








  parent reply	other threads:[~2002-11-07 21:04 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-11-04 22:34 Can I treat Current_Output as a file of bytes? Bj�rn Persson
2002-11-05 14:30 ` Ted Dennison
2002-11-05 16:01   ` Bj�rn Persson
2002-11-05 18:13     ` Warren W. Gay VE3WWG
2002-11-05 22:14       ` Bj�rn Persson
2002-11-05 22:48       ` Robert A Duff
2002-11-06  0:42         ` Jeffrey Creem
2002-11-06  7:14         ` Dale Stanbrough
2002-11-06  8:45         ` Fraser Wilson
2002-11-08 10:03         ` Jacob Sparre Andersen
2002-11-05 22:27     ` Ted Dennison
2002-11-06 23:40       ` Randy Brukardt
2002-11-07  2:45         ` Larry Kilgallen
2002-11-07  4:04         ` Ted Dennison
2002-11-07 19:01           ` Bj�rn Persson
2002-11-07 21:04           ` Randy Brukardt [this message]
2002-11-08  0:03             ` Bj�rn Persson
2002-11-08  1:36               ` Larry Kilgallen
2002-11-08 14:53                 ` Stephen Leake
2002-11-09 14:33                   ` Marin David Condic
2002-11-09 15:26                     ` Preben Randhol
2002-11-09 14:36                       ` Larry Kilgallen
2002-11-10 15:37                       ` Marin David Condic
2002-11-08 16:40                 ` Bj�rn Persson
2002-11-08 15:55                   ` Larry Kilgallen
2002-11-08 18:07                     ` Bj�rn Persson
2002-11-08 19:09                 ` Matthew Woodcraft
2002-11-08 20:34                 ` Randy Brukardt
2002-11-08 15:10               ` Ted Dennison
2002-11-08 15:57                 ` Larry Kilgallen
2002-11-08 16:16                 ` Preben Randhol
2002-11-08 17:30                 ` Bj�rn Persson
2002-11-08 20:32                 ` Randy Brukardt
2002-11-07  0:44       ` Bj�rn Persson
2002-11-07 14:41         ` Ted Dennison
2002-11-07 17:41           ` Bj�rn Persson
2002-11-09 11:37         ` Georg Bauhaus
2002-11-06  8:26 ` Pascal Obry
  -- strict thread matches above, loose matches on Subject: below --
2002-11-06  5:54 Grein, Christoph
2002-11-07  6:28 Grein, Christoph
2002-11-07 17:04 ` Bj�rn Persson
2002-11-07 19:05 Kees de LezenneCoulander
replies disabled

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