From: Ned Ulbricht Newsgroups: comp.os.msdos.djgpp Subject: Re: Suggestion: Portability section for libc docs Date: Tue, 10 Feb 1998 06:20:39 -0800 Organization: University of Washington Lines: 55 Message-ID: <34E06236.3D3B@ee.washington.edu> References: NNTP-Posting-Host: cs239-4.student.washington.edu Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk Nate Eldredge wrote: > Although DJGPP is of course the best DOS development environment in the > known universe :), there is one feature I miss from Turbo C. There, the > documentation for each function included a "Portability" section, indicating > how possible it would be to use the function on other systems. I'd like to > suggest something similar be added to DJGPP. Each function could say whether > it is ANSI, POSIX, available on Unix or other DOS compilers, unique to > DJGPP, etc. > Before everyone gets upset, I am willing to work on this myself. However, I > don't have the ANSI or POSIX standards and don't have much experience with > other DOS compilers, other than a very old version of Turbo C. Perhaps > someone can tell me where I can get (by e-mail or FTP only, please) > summaries or lists of functions defined by the standards (or even the > standards themselves, though I gather they cost lots of money :( ). > > I think this would be a significant aid to people trying to write portable > programs with DJGPP. First, this idea would benefit not just the djgpp community, but the whole gcc community. I'm completely in favor of it. Second, after thinking about it for a little bit, it seems to me that the only way to completely avoid issues of copyright theft and plagiarism is to create a validation stub for functions in the djgpp distribution and then attempt to compile/run them under a selection of other compilers/platforms. Obviously there's not a problem with relying on public domain references when they're relevent and available. And certain functions can just be declared non-portable (djgpp only or gcc only) by fiat. But to list something as portable will usually require relying on sources which are not in the public domain--unless we test it ourselves. I don't think there's a problem with using copyrighted references as *references*. For instance "both Borland and Microsoft say that function foo() is portable among MS-DOS platforms" so we *tested* it on them and we think it is too. But if we don't test, then I think it ultimately just comes down to just copying someone else's work. As a counterpoint: There's the line of reasoning, popular among students, that if you copy something from three different places it's not plagiarism. I don't think that really holds up in court all that well, though. Ultimately, this information should be in the public domain. But ANSI/ISO do support themselves by selling standards--and Microsoft, Borland et al by selling compilers with documentation. I would not be surprised if one of them got upset by our changing the legal status of a piece of information they thought they owned. -- Ned Ulbricht mailto:nedu AT ee DOT washington DOT edu