PlainOldCee, often called a high-level assembly language, is the root from which most commercially-successful modern languages descend. It simulated strong typing reasonably well, was reasonably efficient across a reasonably wide range of platforms and systems, and yet allowed the creative programmer enough freedom to stretch it beyond the limits envisioned by its creators. Its chief descendent, CeePlusPlus, contains most of its semantics and syntax. In fact, most successful CeePlusPlus applications, in my experience, result from simply avoiding the object oriented "extensions" to PlainOldCee and writing good, tight, PlainOldCee code. -- TomStambaugh ---- Hear, hear! What he said. My son is taking ComputerScience, and his current class endeavors to teach CeePlusPlus without first getting grounded in PlainOldCee. So his first "hello world" uses '''cout << ''' rather than '''printf()'''. I guess printf() is too complicated. Hell in a hand basket. Doomed (doomed). End of the world as we know it (tm). Kids nowadays. -- GarryHamilton ''Do I hear a YorkshiremanSketch brewing? -- another OldFart'' "It's the End Of The World as we know it...(and I feel fine)" * printf? '''printf'''? 'Tis for wimps. ''I'' remember doing I/O the old fashioned way -- putting the pointer to the buffer in the right register and trapping to INT 13. And if you wanted to print a ''number'', you had to convert it to text yourself! * Oh, yeah? BIOS is for weenies. ''I'' remember having to manually program the hardware myself. And formatting numbers! We didn't have a DIV instruction when I cut my teeth, so I had to do ''long division'' by hand. In assembly language. On a machine whose entire main memory would fit inside a cache line on a modern CPU! * CPU?!? ''CPU?!?'' Why, in ''my'' day we had to use one-time PGAs to simulate microprocessors! And none of this 3nS gate-to-gate rocket ship action, nosireebob! We used 40nS parts because that's what was available. And if you made one mistake, your "processor" PGA was toast! We lost many a good programmable hardware man to budget issues, let me tell you. My rocket club does most of its work in PlainOldCee, probably because of all the embedded RealTime work involved. Our simulator is written in CeePlusPlus, but only because the originator knew that language professionally. The rest of us don't want to touch it with a ten foot pole. (We wrote the telemetry viewer in Java and some do some prototyping in Haskell.) -- IanOsgood ---- PlainOldCee has two things going for it - simplicity and speed. It's a nice, compact, easy-to-learn language. It is also quite possibly the single most dangerous programming tool that most coders will ever handle. Despite the fact that the IOStream is the canonical example of silly operator overloading in CeePlusPlus, there are legitimate reasons to use the CeePlusPlus constructs - primarily safety. Can you say "Buffer Overrun?" * Personally, I'm of the opinion that << and >> are ''best'' used for I/O; bit-shifting should get a library function rather than an operator. :) ---- CategoryCee CeeLanguage