From: mortee Date: 2007-10-12T19:43:12+09:00 Subject: Re: Ignore printout Fredrik wrote: > I am still confused over why STDOUT is not a constant though... > Thanks for your pointers! I'd guess that when you reopen a stream, then it as an object remains the same, just what you send it will end up somewhere else than before. In contrast, when you assign to a variable, the object itself changes which that variable references. Since $stdout and STDOUT initially point to the same object, if you dont assign $stdout, instead you modify the onject itself, the two continue to reference the same original object. Remember that you can modify a constant object's state without any warning anyway, so you could even reopen STDOUT itself. mortee