On Wed, Nov 05, 2003 at 07:28:57PM -0800, Ilya Zakharevich wrote: > > * There's no expectation or reason that it might work this way on OS/2. > > Anyone who found this found it because it happened unexpectedly. > > This is the Perl philosophy; document only top 30% of the iceberg; > rely on users experimenting to deduce the rest. That's not philosophy, that's a consequence of a lack of tuits to write comprehensive documentation and nobody having reported this as a possible bug to be fixed until now. > > So, in the end, its in your best interest to be as compatible as possible > > with how Perl works on other operating systems without compromising the > > functionality of Perl for OS/2 users. Up to you. > > So we are exactly where we started [you did not think that I missed > any of these arguments, did you?]. It is still one undocumented > behaviour vs the other. Its expected yet undocumented behavior on N - 1 operating systems vs surprising and undocumented behavior on 1 operating system. Most people call the latter a "bug". We're still allowed to fix bugs. > And, BTW, it is not enough to code copy_overwrite(). Actually, one > should distinguish 3 possible cases: target does not exists; target > exists and is not RO, target is RO. [Same with rename(), of course.] The first two situations are obvious. The third is the only one possibly up for discussion and then I'd probably just let the filesystem handle it since the expected behavior in that case *is* OS specific. There really shouldn't be any question of what the proper behavior of copy() is with regard to a writable or non-existant destination file. Again, the choice comes down to historical bug preservation or compatibility for OS/2 users. -- Michael G Schwern schwern@pobox.com http://www.pobox.com/~schwern/ I'm going to have to hurt you on principle.Thread Previous | Thread Next