Path: utzoo!utgpu!water!watmath!clyde!att-cb!att-ih!pacbell!ptsfa!lll-tis!mordor!sri-spam!sri-unix!garth!walter From: walter@garth.UUCP (Walter Bays) Newsgroups: comp.lang.c Subject: Re: Volatile is Necessary Message-ID: <589@garth.UUCP> Date: 31 Mar 88 20:06:01 GMT References: <8107@sol.ARPA> <77200028@uiucdcsp> Reply-To: walter@garth.UUCP (Walter Bays) Organization: INTERGRAPH (APD) -- Palo Alto, CA Lines: 28 Posted: Thu Mar 31 12:06:01 1988 In article <77200028@uiucdcsp> gillies@uiucdcsp.cs.uiuc.edu writes: >C is not a multiprocessor systems programming language. I'm sorry for >you multiprocessor programmers. My advice to you is to buy >hypercubes, write in assembly language, or develop your own language [...] >You can get what you want by adding a compiler-specific (#pragma type) >extension, with no loss of generality. [...] >THE ONLY reason to keep it in the language is if you can argue it's >important for uniprocessing. [...] I agree that C is a poor language for multiprocessors, though I'd probably choose Ada over assembler. I'm not concerned with multiprocessors. I am concerned with a C compiler that can generate highly optimized code for 95% of application programs without fear of generating incorrect code for systems programs, or for 5% of programs with dangerous use of pointers and signals. Yes, a #pragma would work just fine. So would a 'cc -Passed_Lint', but it would be nice if the same mechanism worked on any UNIX machine, and great if it also worked on non-UNIX machines. You're right that, for standards, simpler is better (another reference to Ada :-). Maybe this is a POSIX issue rather than a C issue. -- ------------------------------------------------------------------------------ Any similarities between my opinions and those of the person who signs my paychecks is purely coincidental. E-Mail route: ...!pyramid!garth!walter USPS: Intergraph APD, 2400 Geng Road, Palo Alto, California 94303 Phone: (415) 852-2384 ------------------------------------------------------------------------------