J
John Bode
santosh said:jacob navia wrote:
[snip]
PS. BTW by many points of view C itself is a legacy language or nearly
one. Since you want to forget history and legacy so badly, why don't
you consider developing for one of the many shiny new languages popping
up every now and then. I suggest C#/CLI/.NET. It has many of the
features that you are constantly trying to bolt onto C.
I do not think that C is a legacy language.
It already is in a number of domains, and I think that number is
growing as newer tools are developed. While still popular for kernel
and embedded programming, I can't think of that much new application
development being done with pure C. The desktop on the Windows side
is firmly in .Net land (C# or VB), and I *think* Apple is finally
dropping the C-based Carbon API in OS X 10.5 (which was meant to be a
temporary measure while developers transitioned over to the Obj-C
Cocoa interface). Unix and Linux development is more of a mixed bag,
I'll grant you, but even there I'm seeing a trend away from C to other
languages like C++ and Java (and as the Mono project gains steam, I
expect a trend away from C++ to C#).
All programming languages have a limited useful lifetime. They never
really die, but as time goes on their niches shrink as the nature of
the computing environment changes (Exhibits A and B: COBOL and
Fortran). C's been around for something like 35 years now, initially
designed in an era of dumb terminals large time-share systems, and
simply doesn't have the toolkit to handle modern-day demands in a
consistent, platform-independent manner. Sure, the Standard has been
extended to add new capabilities, but I doubt we'll ever see the
addition of a platform-independent network layer in the standard
library, for example.
By that same token, I doubt C# and Java will enjoy their current
popularity 30 years from now.
Professionally speaking, I'm pretty much done with C. My company has
officially adopted a C#-based framework for all new products, although
my specific project is C++-based. The last time I had to look for a
general software development job, all the requests were for C#, VB, or
C++ experience.