Shark8 expounded in news:066181c0-9b80-4c17-a7b4-7ef28a297ea4@e16g2000pri.googlegr oups.com: > On Dec 3, 8:49�am, Warren wrote: >> I really hate MS software design. �Every API item is shoe >> horned into a WORD, DWORD or some basterized pointer to >> some such. �Why couldn't they take the time to put some >> real C++ types (if they're going to use C++) around these >> things? � Cheeze Louise! �And drop that Hungarian >> notation, for crying out loud. >> >> Warren > > I defiantly agree with the Hungarian notation. followed by The type declaration carrys the type information. It does NOT belong in the name (of the variable). It creates a maintenance nightmare also -- change the type and all instances of the name must be changed. BLECH. > The argument could be made that if they were going to spend > the time/ energy to use "real C++ types" they would have > been better off doing it in Ada where the strong typing > would help; That's academic- but they did use C++. > IMO, C++ encourages the disuse/misuse of types. If you're going to use C++, then don't dumb it down to dumbest unspecified types. That's like taking a sports car and using those dumb little spare tires that limp you home. > I agree with you about the WORD, DWORD, pointer thing. It > would be better to have actual types with actual > parameters/fields... Yes. Every event and API is usually specific enough for real type definitions. > but then the same could be said about > the 'typless' FSes for *nix and windows That is something different. A "file" is a perfectly generic container of information. Do you want to allow your software to decide the format? Or would you prefer the OS to do it instead? Something must decide. Prior to Unix, everything was a unit record of some sort. It still is on the non-UNIX (non-hierarchical) parts of a mainframe: //DATAOUT DD DSN=M0DXYZ.DATA, // DISP=(NEW,CATLG,DELETE), // SPACE=(TRK,(10,10),RLSE), // DCB=(RECFM=FB,LRECL=23,BUFNO=10,OPTCD=C) Do you want to go back to specifying all these file attributes? RECFM=? LRECL=? BLKSIZE=? bLECH. Not to mention it complicates ftp transfers etc. : LOCSITE LRECL=80 RECFM=FB BLOCKSIZE=320 CYLINDERS \ PRIMARY=2 SECONDARY=2 Blexhch. One of the best things about Unix is that it finally tossed aside all of these silly hinderances. Everything since has copied this thinking. Warren