Date: Wed, 09 Dec 1998 19:13:31 +0000 From: Ruslan Shevchenko <Ruslan@Shevchenko.Kiev.UA> To: Alfred Perlstein <bright@hotjobs.com> Cc: rssh@grad.kiev.ua, hackers@FreeBSD.ORG Subject: Re: inclusion of system headers. Message-ID: <366ECBDA.BB19E1F2@Shevchenko.Kiev.UA> References: <Pine.BSF.4.05.9812091150410.27793-100000@bright.fx.genx.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Alfred Perlstein wrote: > On Wed, 9 Dec 1998, Ruslan Shevchenko wrote: > > > > > Question: > > > > Are exists some reasons, for existing next situation: > > > > A.h refer to something, including in B.h, but A.h not include B.h . > > > > I think, this is design bug. > > > > In FreeBSD such situation, at least with <sys/uio.h> and <sys/types.h>, > > which breaks clear compiling of erlang (which yesteday was releasing > > as open source with NPL-style license). > > > > <begin quote from erlang mail list:> > > I thought the same too, however it was explained to me that several people > spent a long time unwinding the headers. > > >From what i guess the problem of chaning the headers like linux does is: > > a) you may wish to redefine certain types for odd/masochistic reasons. ???? > b) it slows compile time signifigantly ??? #ifndef __A_H #include A.h #endif it is 3 strings of empty cpp output on one header inclusion. Is it really slow compilation ? Where and when it was ? > > c) it's a solution for people who don't really know what goes where, > and FreeBSD should encourage good programming practicies. > Why FreeBSD is not writeln in assembler ? Mininmizing of dependences between different modules is one of axioms of software engeneering. Seriosly. > > Basically if you RTFM on functions and read most programming texts > they will explain what to include and where. > But why to do this work n times, during porting of each software package, if this work can be complete eliminated once. > > Lastly, why not have #include <stdio.h> just suck in the whole include/* ? > doesn't sound too apetizing now does it? :) > In general, you want, that "only correct writeln software" must be easy ported to FreeBSD. And you minimize source code compability between FreeBSD and other systems, when software is not writeln in correct esoteric stream ;) More usefull, I think, is maximize source code compability, is better, then create artiffical difficultes for porting. > > Alfred Perlstein - Programmer, HotJobs Inc. - www.hotjobs.com > -- There are operating systems, and then there's FreeBSD. > -- http://www.freebsd.org/ 3.0-current To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?366ECBDA.BB19E1F2>