Peter St. John wrote:
>>> On 4/4/08, *Joe Landman* <landman at scalableinformatics.com> <mailto:landman at scalableinformatics.com>> wrote:
>>> Sadly, when I taught some HPC usage/programming classes a few years
> ago at my alma mater, the students varied between knowledgeable
> scientific computing users in chemistry/physics/biology, to people
> who "knew" Java and C++. The latter couldn't program in C for some
> reason. No. Really. Stop laughing. (for those that don't get it,
> C++ is C with some extra stuff added on ... they are for all
> intensive porpoises, the same language if you ignore OO stuff,
> generics/templates ...)
>> I'm sympathetic with C++ programmers who "can't program in C". It's
> trivial for me to code in C++: I can just write K&R C, it compiles and
> does what I want, because C is (with minute exceptions) a subset of C++.
> The reverse is not the case: C++ is a large language (compare
> Stroustrop's book, which looks like the Wheeler Misner Thorn holding
> down RGB's desk, to Kernighan & Ritchie; and Thompson's formal
> definition of B is like 3 pages). Few people know all the formal
> definition of C++, much less all the standard libraries; most work
> effectively with a subset. People who think of writing to a file as
> piping through a stream may not be aware of "printf" or "putc", and they
> need not be; unless you asked them to write someting that would compile
> in ANSI C89. However, I would expect that a competent C++ programmer
> could **learn** C pretty quickly.
K&R C is actually pretty spooky. Every time I look at old C code, I feel
like I'm walking into a haunted house.
Separating the interfaces of your functions from the data-typing is
really a bad semantic -- I'm glad they superseded it in ANSI C.
--
Geoffrey D. Jacobs