Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utcs!flaps From: flaps@utcs.UUCP Newsgroups: net.lang.c Subject: microsoft C considered stupid Message-ID: <1986Jun20.01:10:46.477@utcs.uucp> Date: Fri, 20-Jun-86 01:10:46 EDT Article-I.D.: utcs.1986Jun20.01:10:46.477 Posted: Fri Jun 20 01:10:46 1986 Date-Received: Fri, 20-Jun-86 04:00:40 EDT Reply-To: flaps@utcs.uucp (Alan J Rosenthal) Organization: University of Toronto Lines: 28 I have just received MS C for the IBM PC/AT running MS-DOS. The manuals, besides being poorly and sometimes inaccurately written, encourage all sorts of stupid things. I would like to share two things with you. 1. They have instituted a pre-processor conditional of the form #if defined(MANIFEST_CONSTANT). Furthermore, the manual notes that use of #ifdef is "discouraged" (though at least they support it). Here in net.lang.c several C revision proposals have been rejected on the grounds that they don't add enough to the language to merit the inconvenience of a change. This change from #ifdef adds absolutely nothing to the language! 2. The manual does not permit something of the form: struct tag { typedeclaration value; ... }; although the compiler does. The manual requires that you actually declare something with the struct. This is not a feasible restriction on C and in fact MS C is not so restricted. In other words, my complaint about MS C is that there are mindless restrictions (in typical IBM style). The examples in the book are all stupid and unclear. I don't know how I would learn C there if I hadn't first learned it here. -- Alan "IBM-hater" Rosenthal {decvax|cbosgd|linus}!ihnp4!utcs!flaps, utzoo!utcs!flaps