954,093 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Have something to say? Contribute New Article Reply to this Article

Future of "C"

Hi All,

I have been observerving a declining trend in use and learning of C among new software engineers.
Newer languages (Java) and more are gaining a foot hold.
People are getting used to more user friendly environments.

I was just thinking will C die out ? Forget legacy code problem.
Eventually Pascal and Fortran dried up despite million programs.

Want to know your opinion on this.

thanks,
Amit Jain

aj.wh.ca
Junior Poster in Training
53 posts since Mar 2005
Reputation Points: 12
Solved Threads: 1
 

I am leaning toward taking my advanced programming class in C#... although once you learn one transitioning to another high level language is not too difficult, so I've heard...

xander85
Light Poster
29 posts since Jul 2007
Reputation Points: 16
Solved Threads: 1
 

>Newer languages (Java) and more are gaining a foot hold.
Yep, just try writing an operating system in Java.

>Eventually Pascal and Fortran dried up despite million programs.
They did?

C isn't going to die... at least not for a long time. Even if programs written in C were to almost completely diminish, you're still forgetting about the millions of applications that exist and have to be maintained.

And here's a thread that debunks a Slashdot article that mentions the same things that you have in this thread:
http://cboard.cprogramming.com/showthread.php?t=90195

John A
Vampirical Lurker
Team Colleague
7,630 posts since Apr 2006
Reputation Points: 2,240
Solved Threads: 339
 

Fortran isn't dead, at least not in the scientific/supercomputing community where it was intended to be used from the beginning.

Pascal lost members because it became obsolete with the intro of C++/Java and had no redeeming functionality.

C does have redeeming functionality because it is faster than both C++ and Java, is used as a metalanguage for writing other computer languages from, and has a wide base of support for writing hardware oriented programs.

Those usages will prevent C from dying anytime soon.


While there may be fewer application developers for C, competitions such as the FIRST Robotics Competition require high school students to write vast (thousands of lines) of code in C, guaranteeing that future generations will be proficient in C's uses.

TheGathering
Junior Poster
102 posts since Jul 2007
Reputation Points: 22
Solved Threads: 10
 

Fortran and cobol still have like a 80% share of the mainframe market

jbennet
Moderator
Moderator
18,523 posts since Apr 2005
Reputation Points: 1,820
Solved Threads: 600
 
Fortran and cobol still have like a 80% share of the mainframe market


How much are mainframes used anymore? (Serious question, I really have no idea...)

Infarction
Posting Virtuoso
1,580 posts since May 2006
Reputation Points: 683
Solved Threads: 53
 

I know people who work for IBM and the answeer is that they are on the up.

All the massive mainframes of the 1950-80s are falling but all the smaller modern mainframes like the IBM zseries are increasing.

jbennet
Moderator
Moderator
18,523 posts since Apr 2005
Reputation Points: 1,820
Solved Threads: 600
 
How much are mainframes used anymore? (Serious question, I really have no idea...)



Well in India whose Railway network is most dense and massive in the whole world the Reservation system throughout the country uses Mainframes with Unix RISC servers. (Motorola RX000series dual server systems).

Many other places where you need extremely fast interface with least implemenatational cost Mainframes still Dominate.

shouvik.d
Junior Poster
198 posts since Jan 2007
Reputation Points: 64
Solved Threads: 7
 

when it comes to embedded nothing can beat C as it can create smallest and highly fucntional programs. Be it a small microcontroller to highly complex Avionics softwares all use C.

shouvik.d
Junior Poster
198 posts since Jan 2007
Reputation Points: 64
Solved Threads: 7
 
highly complex Avionics softwares all use C.



Actually a large amount of aircraft, nuclear, military and space systems use ADA.
Because Ada is a strongly-typed language, it has been used outside the military in commercial aviation projects, where a software bug can mean fatalities. The fly-by-wire system in the Boeing 777 runs software written in Ada. The Canadian Automated Air Traffic System (completed in year 2000 by Raytheon Canada ) was written in 1 million lines of Ada ( SLOC count). It featured advanced (for the time): distributed processing; a distributed Ada database; and object-oriented design.

jbennet
Moderator
Moderator
18,523 posts since Apr 2005
Reputation Points: 1,820
Solved Threads: 600
 

It's a common misconception that C and C++ are good languages for business applications. They are most decidedly not. They are good and useful for GUI front ends and a host of non-business apps. COBOL remains the premier business language. Aside from being easy to write and easy to read, COBOL generally does not make pointers available to the programmer, so one of the most common sources of bugs in C and C++ -- uninitialized and badly set pointers -- doesn't exist in COBOL.

Another interesting difference is that at least in some mainframes, code and data are in different address spaces, and code is not modifiable in memory. That eliminates another source of countless problems in C and C++ -- that C promotes code being in modifiable memory and promotes code being located at higher memory addresses than data, hence the buffer overrun exploits in which too-large data items are designed to overwrite memory up to and including executable code. In the mainframes I work with, that can't be done.

Another weakness of the C genre for business is that C likes to sling around strings whose lengths are defined only by a terminating null. This contributes to things like buffer overruns since the fastest and easiest way to write code ignores the sizes of data items. In most truly high-level languages the data items are typed and defined, and their lengths figure into the compilation of code. In COBOL, move a 200-char item into a 100-char item and automatically it will be truncated at 100 chars. Move a 100-char item into a 200-char display item and the additional space will automatically be blank-filled.

Although it's possible to have uninitialized variables in COBOL, it's not generally possible to have uninitialized or incorrectly set pointers because pointers are entirely internal, not available to programmers to misuse.

WangVS
Newbie Poster
7 posts since Jul 2007
Reputation Points: 10
Solved Threads: 0
 
COBOL remains the premier business language.



I said that earlier.Fortran and cobol still have like a 80% share of the mainframe market

jbennet
Moderator
Moderator
18,523 posts since Apr 2005
Reputation Points: 1,820
Solved Threads: 600
 

This article has been dead for over three months

Post: Markdown Syntax: Formatting Help
You
View similar articles that have also been tagged: