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

Member Avatar for xander85

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...

>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

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.

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

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...)

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.

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.

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.

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.

commented: i regret going at you in the thread about beaming energy from space. i thought you were daft but your knowledge of technology proves otherwise. it seems to exceed my own. +1
Member Avatar for WangVS

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.

COBOL remains the premier business language.

I said that earlier.

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

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.