1 / 25

Chapter 3 – 1952-1968

Chapter 3 – 1952-1968. Early History of Software. Software. What is software? Programming? Extremes Microcode vs. Interface Read comments - Page 81 How did hw & sw fit together?. Very Early Days. Summer 1944- Grace Hopper to Harvard Howard Aiken, MARK I –Pg. 82

infinity
Download Presentation

Chapter 3 – 1952-1968

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Chapter 3 – 1952-1968 Early History of Software

  2. Software • What is software? Programming? • Extremes • Microcode vs. Interface • Read comments - Page 81 • How did hw & sw fit together?

  3. Very Early Days • Summer 1944- • Grace Hopper to Harvard • Howard Aiken, MARK I –Pg. 82 • “Thus began the process of computer programming in the U.S.” • Idea for multiple tapes - for code reuse

  4. Early Programming • Mark III – typed commands, stored on magnetic tape, executed • Zuse – “Plan Preparation Machine” • Commands on tape, checked syntax, translated • EDSAC- library of paper tape code • Wheeler Jump  subroutine call • None stored in internal memory

  5. Early Computers • UNIVAC 1952 • Today  translate to machine code • Punch Cards: pre-punched + transitional = compile • Grace Hopper: A-0 compiler at UNIVAC • Automatic programming • To handle subroutines by copying them into main • Idea: “ Interchangeable parts” too inflexible • Realized were standardizing the wrong level of work

  6. Whirlwind @ MIT • J.H. Laning & N. Zierler • “A program for translation of mathematical equations for Whirlwind I” - 1954 • Behaved like modern compilers • Not general purpose - algebraic equations • Backus (FORTRAN) – Elegant but threatened the “priesthood” • Knuth – too slow

  7. Assemblers • Systems  Programming Languages • One-to-one binary (machine) code • Macro instructions • Symbolic Addressing (variables)

  8. SHARE • 1955 - IBM 701 users in L.A. • Compiled library of routines • Grew to 62 members • IBM responded to opinions • Helped transition to 704

  9. Sorting • Applications - Files on tape • Up to 1973 - 25% of computer time • People “used” printed reports • Betty Holberton @ UNIVAC-1952 • Sorted small groups and merged with master file • Knuth – “1st major software routine ever developed for automatic programming • Later disks & linked lists - plus

  10. FORTRAN - 1957 • Formula Transistor- scientific • IBM for 704, John Backus • Still widely used • Key to success: generated code as efficient as written code • Fast; 704 had floating point hardware • Combination of hiding and access

  11. COBOL-1959 • Common Business Oriented Language • Dept. of Defense • Produced language specifications • U.S. govt.: all h.w. must handle COBOL • Thus, one of 1st standardized • Grave Hopper @ UNIVAC • Flow-matic - Use long character names • Year 2000 bug • Not really self documenting

  12. Other Early Languages • ALGOL- Europe, 1958-1960 • Hardware independent • Specified in BNF • JOVIAL • Def. Dept. Variant of ALGOL for SAGE • Still used recently • LISP – AI - Lists • SNOBOL - Strings • RPG – IBM - still used – AS400

  13. Early System Software • Operator scheduled all resources • Soon became too complex • IBM - Job Control Language (JCL) • 1990’s  Operating System

  14. MAD: Michigan Algorithmic Decoder • University students needed “help” • 1959: ALGOL Based • *Fast Compile *Good Diagnostics • Memory Dumps • Helped to keep computer busy NOTE: No applications software!

  15. Evolution of Operation Systems • Continued to grow in complexity, size • Monitor • Supervisor system • Operating system • DOS to Windows (GUI) • IBM System/360-1966 • OS/360- business + scientific - Failure • Mini-computers-1960’s • OS development started over • Small memories • VMS for VAX (DEC)-1978 • Personal Computers • OS development started over Again!

  16. Computer Science • With Mathematics & Electrical Engineering • Stanford and Purdue – 1950’s • Stanford • Mathematics 1961 • Separate Dept. 1965 • Study of computers vs. Study of Algorithms • ACM Curriculum ‘68

  17. Computer Science (cont.) • 1968 – ACM – Curriculum - no h.w. • 1964 -12 University degrees • 1968 - 100 • 1980 - Most popular major in the US

  18. Donald Knuth- “The Art of Computer Programming” • 1968 Published 1st volume of 7 • 1: Fundamental Algorithms • 2: Semi numerical Algorithms • 3: Searching and Sorting

  19. Knuth Cont. • TBA - in progress • 4: Combinatorial Algorithms • 5: Syntactic Algorithms • Maybe - “God Willing” • 6: Theory of Context free languages • 7: Compiler Techniques • www-cs-faculty.stanford.edu/~Knuth/taocp.html

  20. Structured Programming • Edsger Dijkstra • Tech. Univ. of Eindhoren, Neth. • University of Texas • March 1968 - CACM • “For a number of years I have been familiar with the observation that the quality of programmers is decreasing function of the frequency of GOTO statements in the programs they produce” • Much Debate, but slow change

  21. Intellectual Property • Letters in CACM, 1968 • Rock for Inst., Calvin Mooers • Sought legal protection for TRAC language • No alterations, changes, etc. • Bernard Galler, MAD, Michigan • MAD & others had been improved by users • TRAC failed - too early for protection • Set stage for future laws/ lawsuits

  22. Software Engineering • 1968- NATO conference “Software Engineering” • “Crisis” • Programmers lacked “ theoretic foundations & disciplines of daily practice” from traditional engineering • No certification nor chain of legal responsibility • Continues to be debated • SE Certification in Texas

  23. Unbundling • Separate H.W. and S.W. • 1968 - IBM – Government pressure • CICS (Customer Info. Control System) • Opened door for commercial vendors

  24. UNIX • 1969- Bell labs in N.J. • Ken Thompson, Dennis Ritchie • PDP-7 • Language “B” – “C” in 1973 • Contrast to ALGOL68 & PL/1 • Pascal- Nicholas Wirth, Sweden

  25. Chapter 3 – 1952-1968 Early History of Software

More Related