Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site brl-tgr.ARPA Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!think!harvard!seismo!brl-tgr!tgr!gwyn@BRL.ARPA From: gwyn@BRL.ARPA (VLD/VMB) Newsgroups: net.lang.c Subject: Re: Uses of \"short\" ? Message-ID: <3098@brl-tgr.ARPA> Date: Mon, 11-Nov-85 00:29:41 EST Article-I.D.: brl-tgr.3098 Posted: Mon Nov 11 00:29:41 1985 Date-Received: Tue, 12-Nov-85 05:06:28 EST Sender: news@brl-tgr.ARPA Lines: 19 You ask for a reference for developing good portable code. Well, "good" is hard, but "portable" is rather simple. Just stick to what the C Reference Manual says about the language, and refuse to use whatever you "know" about your particular system that is not guaranteed by the language definition. That would eliminate most of the usual portability problems found in C code. Designing your application to be insensitive to the details of the operating environment is harder. You should, as a minimum, identify such dependencies and isolate them inside per-environment modules that implement a common "portable" interface to the facilities. (The STDIO library is an example of such a package; the "curses" library is another.) That way only a small, known piece of your application requires adaptation when you port the code to a new environment. Beyond that, you need to wait for Laura's book..