comp.lang.ada
 help / color / mirror / Atom feed
From: Robert A Duff <bobduff@shell01.TheWorld.com>
Subject: Re: Get_Line
Date: Thu, 31 Oct 2002 00:44:19 GMT
Date: 2002-10-31T00:44:19+00:00	[thread overview]
Message-ID: <wccd6prv3mk.fsf@shell01.TheWorld.com> (raw)
In-Reply-To: apptha$2q5u$1@msunews.cl.msu.edu

"Chad R. Meiners" <crmeiners@hotmail.com> writes:

> "Robert A Duff" <bobduff@shell01.TheWorld.com> wrote in message
> news:wcc3cqn35wu.fsf@shell01.TheWorld.com...
> > But isn't the *real* problem that the design of Text_IO is broken?  For
> > example, why is there no Get_Line function:
> >
> >     function Get_Line(...) return String;
> >
> > that returns the entire contents of the next line, no matter how long it
> > is, and without fussing about with fixed-length (i.e. wrong length!)
> > buffers?
> 
> I wouldn't say broken.

Why not, given that beginners have trouble with all that buffer
management?  In fact, so do experts!  How does one choose the correct
buffer size?

Whether or not you like my Get_Line idea, surely you must admit that
beginners and experts are troubled by the current Text_IO interface.

>...  Do you really want Ada.Text_IO to contain functions
> with side-effects?

Yes, given that that's the usual way in Ada to return an
arbitrary-length string.

> Put_Line (Get_Line & Get_Line);  -- Do you want to encourage this in the
> standard?

I don't think a Get_Line function *encourages* that.  I just want to
allow: 

    X: constant String := Get_Line...

----

By the way, if you're phobic of side effects, why do we have "X := new
T;" (in Ada) instead of "new(X);" (as a statement in Pascal)?  The "new"
clearly affects (or causes side-effects upon) the heap.

Does this "encourage" things like "if new T = new T then.."?

- Bob



  reply	other threads:[~2002-10-31  0:44 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-10-29 20:24 Get_Line Justin Birtwell
2002-10-29 20:55 ` Get_Line David C. Hoos
2002-10-30  1:30 ` Get_Line Jeffrey Carter
2002-10-30 13:33   ` Get_Line Justin Birtwell
2002-10-30 14:40     ` Get_Line Preben Randhol
2002-10-30 17:09     ` Get_Line Jean-Pierre Rosen
2002-10-30 18:08     ` Get_Line Jeffrey Carter
2002-10-30 22:42       ` Get_Line Robert A Duff
2002-10-31  0:26         ` Get_Line Chad R. Meiners
2002-10-31  0:44           ` Robert A Duff [this message]
2002-10-31 10:32             ` Get_Line John English
2002-10-31 11:30               ` Get_Line Preben Randhol
2002-10-31 13:10                 ` Get_Line John English
2002-10-31 17:39             ` Get_Line Warren W. Gay VE3WWG
2002-10-31 21:46             ` Get_Line Chad R. Meiners
2002-11-01 16:59               ` Get_Line Robert A Duff
2002-11-01 21:04                 ` Get_Line Chad R. Meiners
2002-11-01 23:32                   ` Get_Line Matthew Heaney
2002-11-02  0:28                     ` Get_Line Chad R. Meiners
2002-10-31  8:53       ` Get_Line Preben Randhol
2002-10-31 18:04         ` Get_Line Jeffrey Carter
2002-11-01 11:18           ` Get_Line Preben Randhol
2002-10-30 14:44 ` Get_Line Preben Randhol
2002-10-31 21:55 ` Get_Line Matthew Heaney
  -- strict thread matches above, loose matches on Subject: below --
1999-07-02  0:00 GET LINE babefan
1999-07-02  0:00 ` czgrr
1998-06-05  0:00 get_line Steve Dyrdahl
1998-06-05  0:00 ` get_line Samuel Mize
1998-06-17  0:00   ` get_line Hans Marqvardsen
1998-06-18  0:00     ` get_line John McCabe
1998-06-21  0:00       ` get_line Robert Dewar
1998-06-06  0:00 ` get_line Dale Stanbrough
1998-06-06  0:00   ` get_line Matthew Heaney
1998-06-07  0:00     ` get_line Dale Stanbrough
1998-06-06  0:00       ` get_line Matthew Heaney
1998-06-18  0:00     ` get_line Robert I. Eachus
1998-06-06  0:00   ` get_line Robert Dewar
replies disabled

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