A History of the C Languages - PowerPoint PPT Presentation

About This Presentation
Title:

A History of the C Languages

Description:

A History of the C Languages By: Kevin Burnette Outline History Ancestor languages overview Development of C Development of C++ Where it all began Combined ... – PowerPoint PPT presentation

Number of Views:325
Avg rating:3.0/5.0
Slides: 15
Provided by: me7765
Learn more at: http://cs.roanoke.edu
Category:

less

Transcript and Presenter's Notes

Title: A History of the C Languages


1
A History of the C Languages
  • By
  • Kevin Burnette

2
Outline
  • History
  • Ancestor languages overview
  • Development of C
  • Development of C

3
Where it all began
  • Combined Programming Language CPL
  • Basic Combined Programming Language BCPL
  • B

4
Whats new in B
  • and - operators were introduced to the
    language
  • and -- operators were invented.

5
From B to C
  • New B - NB
  • Dennis Ritchie of Bell Labs created an extend
    version of B in 1971.
  • Added int, and char types, arrays of them and
    pointers to them and rewrote the compiler to
    create PDP-11 instructions.
  • NB created programs small and fast enough to
    compete with assembly written programs.

6
Questions of design
  • These questions were asked in designing structure
    types.
  • Where could the compiler hide the pointer to
    name that the semantics demanded? (Ritchie 8)
  • Even if structures were thought of more
    abstractly, and the space for pointers could be
    hidden somehow, how could I handle the technical
    problem of properly initializing these pointers
    when allocating a complicated object, perhaps one
    that specified structures containing arrays
    containing structures to arbitrary depth?
    (Ritchie 8)

7
Answer
  • The solution eliminated the materialization of
    the pointer in storage, and instead caused the
    creation of the pointer when the array name is
    mentioned in an expression.
  • This provided a large jump in the evolution
    between typeless BCPL and C.

8
More Innovation Type Structure
  • The central notion I captured from Algol was a
    type structure based on atomic types (including
    structures), composed into arrays, pointers
    (references), and functions (procedures).
    (Ritchie 8)

9
C is officially born
  • After creating the type system, the associated
    syntax, and the compiler for the new language, I
    felt that it deserved a new name NB seemed
    insufficiently distinctive. I decided to follow
    the single-letter style and called it C, leaving
    open the question whether the name represented a
    progression through the alphabet or through the
    letters in BCPL. (Ritchie 9)

10
Further Development
  • Preprocessor
  • The preprocessor was originally added as an
    optional component
  • First version only provided file including and
    simple string replacement
  • Idea was taken from BCPL and PL/I

11
C with Classes
  • Work began in 1979 in attempt to analyze the UNIX
    kernel to see if it could be distributed over a
    network
  • Bjarne Stroustrup begin creating the tools he
    needed based on his experience with Simula

12
C
  • Between 1982 and 1984 Stroustrup began to think
    of C with Classes as a separate language instead
    of an addition to C.
  • Version 1.0 was released in 1985 and C was
    officially named.

13
Code Examples
  • GET "LIBHDR"
  • MANIFEST (
  • BOTTLES 99
  • )
  • LET START() BE (
  • LET BEERS(N, S) BE (
  • TEST N 0 THEN WRITEF("No more bottles")
  • ELSE WRITEF("N bottleS", N, (N 1) -gt "",
    "s") WRITEF(" of beerS", S)
  • )
  • FOR I BOTTLES TO 1 BY -1 DO (
  • BEERS(I, " on the wall, ")
  • BEERS(I, ".NTake one down, pass it around.N")
  • BEERS(I - 1, " on the wall.N")
  • )
  • FINISH
  • )
  • From http//www.99-bottles-of-beer.net/language-b
    cpl-85.html

14
Sources
  • BCPL. Wikipedia The Free Encyclopedia. 2006.
    Wikipedia. 7 Apr 2006. http//en.wikipedia.org/wik
    i/BCPL
  • Combined Programming Language. Wikipedia The
    Free Encyclopedia. 2006. Wikipedia. 7 Apr 2006.
    http//en.wikipedia.org/wiki/Combined_Programming_
    Language
  • Ritchie, Dennis. The Development of the C
    Language. History of Programming Languages-II.
    Ed. T.J. Bergin, Jr. and R. G. Gibson, Jr. ACM
    Press (New York) and Addison-Wesley (Reading,
    Mass), 1996 ISBN 0-201-89502-1.
  • Stroustrup, Bjarne. A History of C
    1979-1991. History of Programming languages. Ed.
    T.J.Bergin and R.G. Gibson, Jr. ACM Press (New
    York) and Addison-Wesley (Reading, Mass), 1996
    ISBN 0-201-89502-1.
Write a Comment
User Comments (0)
About PowerShow.com