Presentation is loading. Please wait.

Presentation is loading. Please wait.

The History of Programming Languages CS 170b Benjamin Gaska, much help from William Mitchell.

Similar presentations


Presentation on theme: "The History of Programming Languages CS 170b Benjamin Gaska, much help from William Mitchell."— Presentation transcript:

1 The History of Programming Languages CS 170b Benjamin Gaska, much help from William Mitchell

2 What is a programming language A simple definition: A system for describing computation. It is generally agreed that in order for a language to be considered a programming language it must be Turing Complete. One way to prove a language is Turing Complete is to use it to implement a Turing Machine, a theoretical device capable of performing any algorithmic computation.

3 How many programming languages are there? Some of the many attempts at a family tree of languages: http://www.digibarn.com/collections/posters/tongues/ http://www.levenez.com/lang/ http://rigaux.org/language-study/diagram.html http://en.wikipedia.org/wiki/Alphabetical_list_of_programming_lang uages http://en.wikipedia.org/wiki/Alphabetical_list_of_programming_lang uages ( 650+/-) The Language List http://people.ku.edu/~nkinners/LangList/Extras/langlist.htm http://people.ku.edu/~nkinners/LangList/Extras/langlist.htm (about 2,500)

4 Natural Language vs. Programming Language Both of them are ways to convey information Both have syntax Syntax is the way things are structured to create larger meaning Both have semantics Semantics are what individual words mean

5 But it is clear that they are quite different beasts Programming languages must be unambiguous Ultimately, all programming languages reach the level of machine code Programming languages are limited in what they can describe The descriptive power of human speech far outstrips that of programming languages

6 Aside: The Sapir- Whorf Hypothesis The structure of a language affects how we conceptualize the world. Ex. There are languages that do not make a distinction between the colors blue and green. Native speakers of these languages have difficulty separating these colors in tests.

7 What does a language design say about how it views the world? Each programming language is created with a purpose. Sometimes that can be to achieve an important goal C was designed to allow for system programming Sometimes it can be for “fun” Malbolge was designed to be as difficult to comprehend as possible 99-Bottles of Beer in Malboge

8 Simplified Timeline TimeLine of Languages Fortran – 1954 LISP – 1956 SNOBOL 1962 & ICON 1977 C – 1972 Smalltalk – 1972 Java – 1995 Rust - 2010

9 Fortran - 1954 John Backus One of the oldest programming languages Incredibly influential Was created for engineering and scientific computation Everything in it is a multidimensional array Still in use today

10 LISP - 1956 John McCarthy Created in order to allow for programming of mathematical notation The earliest language used (and still used today) for serious AI research The father of all “functional languages”

11 SNOBOL – 1962 Icon – 1977 Ralph Griswold SNOBOL (StriNg Oriented symBOlic Language) was one of the earliest languages for string manipulation Icon was created here at the UA. Used an interesting Goal-Directed evaluation style “A General-purpose language known for its beauty and grace”

12 C – 1972 Dennis Ritchie Designed for system level programming, needed a language just above assembly code. Was created, specifically to create the UNIX operating system Possibly the most influential programming language of all time Source of the “Hello, world” archetype Also famous for its tendency to create bugs

13 Smalltalk – 1972 Alan Kay The earliest major object oriented programming language “Smalltalk fits on a postcard!” Defined the concept of a laptop “The best way to predict the future is to invent it”

14 Java – 1995 James Gosling “Write once, run anywhere” Utilizes a bytecode that allows it to run on any machine Most rapid growth of any language in history Garbage collection

15 Rust – 2010 Graydon Hoare (initial) Built with pure-functional programming and concurrency in mind Open-Source, the language is designed and implemented by the community Multi-paradigm, melting together many ideas from all the languages we’ve seen


Download ppt "The History of Programming Languages CS 170b Benjamin Gaska, much help from William Mitchell."

Similar presentations


Ads by Google