Why exceptions shouldn't be used for flow control [Re: YAS to the "Reading line-by-line" Problem]
nospam at bitbucket.com
Sun Jun 27 07:07:03 CEST 1999
William Tanksley wrote in message ...
>On Fri, 25 Jun 1999 10:19:05 +1200, Greg Ewing wrote:
>>William Tanksley wrote:
> [long discussion of f.eof() vs. exceptions excised]
>OTOH, that particular exceptionn would get thrown only in a truly bizzare
>situation, because all code would look somethinng like this:
>while not f.eof():
> line = f.readline()
> # ...
I have sometimes had to read non-atomic objects from a stream, eg:
name = f.readline()
addr1 = f.readline()
addr2 = f.readline()
# combine name, addr1, addr2 into something
# put it somewhere
Other examples: Pascal-style strings; mixed-length objects.
Doing this properly in C is a pain because of the requirement to test
error/eof after reading each fragment. Assuming low overhead, exceptions
strike me as a significant improvement.
Phil Mayes pmayes AT olivebr DOT com
Olive Branch Software - home of Arranger
More information about the Python-list