Path: utzoo!mnetor!uunet!pwcmrd!skipnyc!atpal!tneff From: tneff@atpal.UUCP (Tom Neff) Newsgroups: comp.lang.c Subject: Re: noalias comments to X3J11 Message-ID: <118@atpal.UUCP> Date: 28 Mar 88 15:23:15 GMT References: <12578@brl-adm.ARPA> <1988Mar25.172355.348@utzoo.uucp> Reply-To: tneff@atpal.UUCP (Tom Neff) Organization: Rational Technologies, Inc. Lines: 26 Summary: /volatile/ isn't a frill, interrupt handlers aren't esoteric In article <1988Mar25.172355.348@utzoo.uucp> henry@utzoo.uucp (Henry Spencer) writes: >Interrupt routines are almost by definition esoteric, not to mention highly >machine-specific. Only on PCs do users commonly write their own interrupt >routines... It would be fairer to say "only on microcomputers" rather than "only on PCs." I write real-time systems for a living, and so do a lot of other folks I know. We do write interrupt routines, and plenty of 'em. "C" is a strong contender among languages for this work, because of its portability and lack of overhead. The basic concept of /volatile/ is very important to me, and I'm glad XJ311 recognizes it. Many's the time I have had to surround a few statements with forests of labels or calls to dummy() just to get one compiler or another to stop optimizing access to a location! I will admit, though, that /vol/ is a grown-up keyword, which plenty of programmers will have little use for. But it needn't intrude in your lives at all. Those who need it, use it. (Fortunately it's not too much of a pain to implement -- effectively it just flags optimization off for certain variables). It does sound like /noalias/ is making a much noisier and messier splash on its arrival in the standard. I am not too keen on forcing a strange new keyword into half the declarations, for instance, in dear old stdio.h. TMN -- Tom Neff