Skip to main contentCal State San Bernardino / [CNS] / [Comp Sci Dept] / [R J Botting] / [CSci320] [Search ]
[Schedule] [Syllabi] [Text] [Labs] [Projects] [Resources] [Grading] [Contact]
Sessions: [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20]
03.html (HTML) [03.txt(Text)] Fri Jan 12 12:37:11 PST 2007

Contents


    CS320/03 Evolution of Major Languages.

      Previous 02 PreliminariesStudy handouts + Chapter 1lab02 HTML home page
      03 Evolution of Main LanguagesChapter 2 (sections 1-12 +16).lab03 HTML lab pages
      Next 04 Syntax: grammars, EBNF, parsingChapter 3 sections 1 to 3 + Chapter 4 sections 1 to 3 + XBNF

      Assigned work due

      1. Check the schedule and syllabus on the WWW site.
      2. Read Warnings below.
      3. Study chapter 2
      4. Try answering the Review Questions at the end chapter 2.
      5. Bring written questions+answers to 3 of these review questions to class. You can do more if you want. Your graded questions and answers can be used in the final.

      Warnings

        C++

        In Chapter 2, Figure 2.1 and Figure 2.10 are a little misleading. They give the impression that C++ was finished in the 1980's and ANSI C was derived from C++. In fact, C++ was developed from C in parallel with ANSI C and collected several ideas from ANSI C. The early C++ did not have much effect on ANSI C. ANSI C was completed in 1989. C++ continued to develop until 1998. ANSI C++ was drafted in 1997. ANSI/ISO C++ was finished in 1998. See the diagram below: History of C++

        COBOL

        I've never known a real COBOL programmer who wrote "PICTURE IS". We all wrote the shorter "PIC". We always omitted stuff like "IS", "LABEL RECORDS ARE STANDARD", and "RECORD SIZE IS <blah>". The compiler worked these out for us.

        Ada

        My memory of the Ada design process was that both PL/1 and Pascal where used as the basis of the early designs. Certainly PL/I was the basis of one of the 17 early designs even if it didn't make it into the final four.

        APL

        The book omits a later development! APL finally escaped the "IBM Golf Ball with Greek letters" environment. There is language called J [ wiki?JayLanguage ] that is the direct descendent of APL that works on ASCII/DOS systems.

        SNOBOL

        This lead directly to a strange semi-procedural language called ICON. The idea of string processing by substitutions re-emerges in UNIX interpreted languages (sh, csh, ksh, bash, ...) and tools like ed, sed, and awk. This line of evolution leads to Perl, PHP, Ruby, and Python.

      Class Work

      [ 03q.html ]

      Lab Work Your first real lab Page

      [ lab/03.html ]

      Next

      [ 04.html ]

    End