Return to BSD News archive
Path: sserve!newshost.anu.edu.au!munnari.oz.au!constellation!osuunx.ucc.okstate.edu!newsfeed.ksu.ksu.edu!moe.ksu.ksu.edu!vixen.cso.uiuc.edu!sdd.hp.com!elroy.jpl.nasa.gov!decwrl!vixie!vixie From: vixie@vix.com (Paul A Vixie) Newsgroups: comp.os.386bsd.development Subject: Re: Request to ``ports'' developers Date: 29 May 94 04:19:24 Organization: Vixie Enterprises Lines: 41 Distribution: world Message-ID: <VIXIE.94May29041924@office.home.vix.com> References: <2s291q$pnl@meatball.rwwa.com> <2s37a4$mp9@pdq.coe.montana.edu> <VIXIE.94May27220527@office.home.vix.com> <hm.770154713@hcswork> <VIXIE.94May28221230@office.home.vix.com> <JKH.94May29085921@whisker.hubbard.ie> NNTP-Posting-Host: office.home.vix.com In-reply-to: jkh@whisker.hubbard.ie's message of 29 May 1994 08:59:21 GMT > one would have to start thinking of operating systems releases in terms of > vintages ("Oh, I see this is an april '93 HPUX - that was a very fine year! > Yes, vendor, I'll have that please!" :-). I was going to follow up humourously on this message but I decided not to. Then as I was brushing my teeth I realized that my reply wasn't humourous after all, I _mean_ it. "That's how it is, Jordan." Systems _do_ evolve. Version N of an operating system or library or whatever will have fewer features than Version N+1 but more than Version N-1. When I write code for these systems I have the choice of coding for the least common denominator, which often results in a suboptimal program that doesn't take good advantage of a system's recent improvements, or putting in some #ifdef's which often results in an unreadable and unmaintainable and generally gateful program text. Imagine using stty/gtty all the time rather than trying to use termios if it's there -- your program will not be able to go faster than 38400 baud even if the system supports it. The key to #ifdef's is to do them _sensibly_. They don't have to be icky. But I sure would like it if ULTRIX was defined as a datecoded macro in <sys/param.h>, since that way BIND and my other software systems could make compile-time decisions about which kernel bugs to work around, rather than testing for the existence of macros which I knew (because I worked at DEC at the time) weren't in some older version of the system. Talk about your counter-intuitive software. So, yes, I'd much rather choose, or at least know, the vintage of my system. BSD is luminary in the field for many reasons, and this is one of them. The folks at CSRG understood that programs and programmers would want to know the date code of the BSD System Interface that describes the system. I wish that the iron vendors would be as wise, but I think I know better by now. -- Paul Vixie Redwood City, CA decwrl!vixie!paul <paul@vix.com>