| | |
Future of "C"
| View Poll Results: Will C die like Pascal and Fortran | |||
| Yes | | 0 | 0% |
| No | | 4 | 40.00% |
| Yes, but atleast after 10 years | | 1 | 10.00% |
| No atleast another 5 years | | 0 | 0% |
| C will remain for specialized areas forever (<=20 years) | | 5 | 50.00% |
| Can't Say | | 2 | 20.00% |
| Multiple Choice Poll. Voters: 10. You may not vote on this poll | |||
![]() |
•
•
Join Date: Jul 2007
Posts: 7
Reputation:
Solved Threads: 0
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.
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.
Last edited by WangVS; Jul 30th, 2007 at 8:18 pm. Reason: typo
![]() |
Similar Threads
- From "Word" to "Access" automatically (MS Access and FileMaker Pro)
- New member saying "Hi" (Community Introductions)
- Just to say "Hi everyone..." (Community Introductions)
- google "keyword" question (Search Engine Optimization)
- typical "i'm new" stuff (Community Introductions)
Other Threads in the IT Professionals' Lounge Forum
- Previous Thread: dead comp follow up
- Next Thread: Web Based IDE -Beta Invitation
| Thread Tools | Search this Thread |
Tag cloud for IT Professionals' Lounge
1gbit advertising advice amazon answers archive british broadband business businessprocesses career carrier censorship cern china cio collectiveintelligence connectivity consumer consumers corporateearnings css datatransfer debtcollectors dictionary digg digital ebay ecommerce email employment facebook food government grid high-definition hottub infodelivery infotech intel internet interview ipod isp japan kindle lhc library malware marketing mit moonfruit news onlineshopping php piracy piratebay pope porn program questions r&d religion remoteworking research retail schools security sex shopping simple skype smallbusiness smb sms socialmedia socialnetworking software softwareengineer spam speed startrek statistics stocks study stumbleupon survey technology touch-screen touchscreen training twitter uk vbulletin videoinprint voips web webdeveloper windows words






