Sunday 1 July 2012

History of the C Programming Language

                                        
                     

             The C Programming Language


History:

C was developed at Bell Laboratories in 1972 by Dennis Ritchie. Many of its principles and ideas were taken from the earlier language B and B's earlier ancestors BCPL and CPL. CPL ( Combined Programming Language ) was developed with the purpose of creating a language that was capable of both high level, machine independent programming and would still allow the programmer to control the behavior of individual bits of information. The one major drawback of CPL was that it was too large for use in many applications. In 1967, BCPL ( Basic CPL ) was created as a scaled down version of CPL while still retaining its basic features. In 1970, Ken Thompson, while working at Bell Labs, took this process further by developing the B language. B was a scaled down version of BCPL written specifically for use in systems programming. Finally in 1972, a co-worker of Ken Thompson, Dennis Ritchie, returned some of the generality found in BCPL to the B language in the process of developing the language we now know as C.

C's power and flexibility soon became apparent. Because of this, the Unix operating system which was originally written in assembly language, was almost immediately re-written in C ( only the assembly language code needed to "bootstrap" the C code was kept ). During the rest of the 1970's, C spread throughout many colleges and universities because of it's close ties to Unix and the availability of C compilers. Soon, many different organizations began using their own versions of C causing compatibility problems. In response to this in 1983, the American National Standards Institute ( ANSI ) formed a committee to establish a standard definition of C which became known as ANSI Standard C. Today C is in widespread use with a rich standard library of functions.


Significant Language Features:

C is a powerful, flexible language that provides fast program execution and imposes few constraints on the programmer. It allows low level access to information and commands while still retaining the portability and syntax of a high level language. These qualities make it a useful language for both systems programming and general purpose programs.

C's power and fast program execution come from it's ability to access low level commands, similar to assembly language, but with high level syntax. It's flexibility comes from the many ways the programmer has to accomplish the same tasks. C includes bitwise operators along with powerful pointer manipulation capabilities. C imposes few constraints on the programmer. The main area this shows up is in C's lack of type checking. This can be a powerful advantage to an experienced programmer but a dangerous disadvantage to a novice.

Another strong point of C is it's use of modularity. Sections of code can be stored in libraries for re-use in future programs. This concept of modularity also helps with C's portability and execution speed. The core C language leaves out many features included in the core of other languages. These functions are instead stored in the C Standard Library where they can be called on when needed.. An example of this concept would be C's lack of built in I/O capabilities. I/O functions tend to slow down program execution and also be machine independent when running optimally. For these reasons, they are stored in a library separately from the C language and only included when necessary.


Areas of Application:

The C programming language is used in many different areas of application, but the most prolific area is UNIX operating system applications. The C language is also used in computer games:
  • UNIX operating system
  • computer games

14 comments:

  1. This is a really good tip particularly to those fresh to the blogosphere.
    Short but very precise info… Appreciate your sharing this one.
    A must read article!
    My web page > www.hyrangetezer.com

    ReplyDelete
    Replies
    1. HI FRIEND ..

      THANKS YOU FRIEND AND PLEASE JOIN THIS SITE IF YOU CAN .

      Delete
  2. After I initially left a comment I seem to have
    clicked the -Notify me when new comments are added- checkbox and now each time a comment is added I
    recieve 4 emails with the same comment. There has to be a way you can remove
    me from that service? Thanks!
    My homepage stone mosaic tiles australia

    ReplyDelete
  3. It's nearly impossible to find knowledgeable people in this particular subject, however, you sound like you know what you're talking about!
    Thanks
    My web blog :: stepping stone mosaic molds

    ReplyDelete
    Replies
    1. HI FRIEND .

      THANKS FOR VISITING MY SITE AND IF YOU CAN JOIN THEN PLEASE ...

      Delete
  4. Amazing! This blog looks just like my old one!
    It's on a entirely different subject but it has pretty much the same page layout and design. Superb choice of colors!

    Feel free to visit my web blog; mosaic retail

    ReplyDelete
    Replies
    1. HII HII HIII THANKS YOU FRIEND .. AND PLEASE JOIN THIS SITE IF YOU CAN .

      Delete
  5. Can I just say what a comfort to find a person that actually knows what
    they are talking about on the web. You actually know how to
    bring a problem to light and make it important. More and more people must look at this and understand this side of your story.
    I was surprised that you aren't more popular because you certainly have the gift.

    Here is my blog: egyption statues
    Also see my page > http://mavscourtsideview.blogspot.se/

    ReplyDelete
    Replies
    1. THANKS FRIEND

      PLEASE JOIN THIS SITE .. I CREATE ANOTHER SITE OF C PROGRAMMING .. WITH MY OWN DOMAIN .

      THANKS

      Delete
  6. This site was... how do you say it? Relevant!
    ! Finally I have found something which helped me. Thanks a lot!


    Also visit my web site: facts about egypt

    ReplyDelete
  7. Hello, I think your blog might be having browser compatibility issues.
    When I look at your website in Firefox, it looks fine but when opening in Internet Explorer, it has some overlapping.

    I just wanted to give you a quick heads up!
    Other then that, wonderful blog!

    My web-site :: facts about egypt

    ReplyDelete
    Replies
    1. Thanks friend and use latest upgraded i.e. if you wants to use that .
      i never use i.e. that's why ....

      Delete