Computer
Programming
I
Content:
• What is a program?
• What is programming?
• What is a programming language
• Early History
What is a program?
A program is something that is produced
using a programming Language.
A program is a structured entity with Semantics.
What is programming?
• Programming is a Science:
Because it implement the algorithms
describe by mathematics and science.
• Programming is a Skill:
Because it requires design efforts.
• Programming is an Engineering:
Because it requires a tradeoffs between program
size, speed, time (required for development and
debugging) and maintainability among many
solutions.
• Programming is an Art
It requires creativity and employ imagination.
What is a programming
language?
A programming language is a set of rules
that
provides a way of telling a computer what
operations to perform.
It provides a linguistic framework for
describing computations in a machine-
readable and human-readable form.
A programming Language is a notational
system
intended primarily to facilitate human-
Programming languages can be used to
create programs that control the
behavior of a computer and serve any
purpose.
English is a natural language. It has
words, symbols and grammatical rules.
Likewise in programming language it also
has a words, symbols and rules of
grammar.
The grammatical rules are called
syntax. Each programming
language has a different set of
syntax rules.
The language elements called
Semantics.
Why are there so many
programming languages?
Why does some people speak French?
Programming languages have evolved
over time as better ways have been
developed to design them.
First programming languages were
developed in the
1950s. Since then thousands of languages
have been developed
Different programming languages are
designed for
different types of programs.
Early History
During 1842–1843 Ada Lovelace translated
the memoir of Italian mathematician Luigi
Menabrea about Charles Babbage's newest
proposed machine: the Analytical Engine; she
supplemented the memoir with notes that
specified in detail a method for calculating
Bernoulli numbers with the engine, recognized
by some historians as the world's first
published computer program.
Pioneers of Programming
Charles Babbage invented the Analytical
Engine. His companion, Ada Augusta
Lovelace, is considered the first programmer
in history.
The first high-level programming language
was Plankalkül, created by Konrad
Zuse between 1942 and 1945 but not
implemented at the time
The first high-level language to have an
associated compiler was created by Corrado
Böhm in 1951, for his PhD thesis.
The first commercially available language was
FORTRAN (FORmula TRANslation); developed
in 1956 (first manual appeared in 1956, but
first developed in 1954) by a team led by John
Backus at IBM.
The first functioning programming
languages designed to communicate
instructions to a computer were written in
the early 1950s. John Mauchly's Short
Code, proposed in 1949, was one of the
first high-level languages ever developed
for an electronic computer.
Early programming languages
• 1951 – Regional Assembly
Language
• 1952 – Autocode
• 1954 – IPL (forerunner to LISP)
• 1955 – FLOW-MATIC (led to COBOL)
• 1957 – FORTRAN (first compiler)
• 1957 – COMTRAN (precursor to
COBOL)
• 1958 – LISP
• 1958 – ALGOL 58
• 1959 – FACT (forerunner to COBOL)
• 1959 – COBOL
• 1959 – RPG
• 1962 – APL
• 1962 – Simula
• 1962 – SNOBOL
• 1963 – CPL (forerunner to
C)
• 1964 – Speakeasy
• 1964 – BASIC
• 1964 – PL/I
• 1966 – JOSS
• 1966 - MUMPS
• 1967 – BCPL (forerunner to
C
Establishing fundamental paradigms
The period from the late 1960s to the late 1970s
brought a major flowering of programming languages. Most
of the major language paradigms now in use were invented
in this period:
• 1967 – BCPL • 1972 – Smalltalk
(forerunner to B) • 1972 – Prolog
• 1968 – Logo • 1973 – ML
• 1969 – B (forerunner • 1975 – Scheme
to C) • 1978 – SQL (a
• 1970 – Pascal query language, later
• 1970 – Forth extended)
1990s: the Internet age
The rapid growth of the Internet in the
mid-1990s was the next major historic
event in programming languages. By
opening up a radically new platform for
computer systems, the Internet created
an opportunity for new languages to be
adopted.
1990s: the Internet age
• 1990 – Haskell • 1995 – Ruby
• 1991 – Python • 1995 – Ada 95
• 1991 – Visual
Basic • 1995 – Java
• 1993 – Lua • 1995 – Delphi(Object
• 1993 – R Pascal)
• 1994 – CLOS • 1995 – JavaScript
(part of ANSI • 1995 – PHP
Common Lisp • 1997 – Rebol
Current trends
Programming language evolution continues, in both industry
and research. Some of the recent trends have included:
• 2000 – • 2009 – Go
ActionScript • 2010 – Rust
• 2001 – C# • 2011 – Dart
• 2001 – D • 2011 – Kotlin
• 2002 – • 2011 – Elixir
Scratch • 2012 – Julia
• 2003 – Groovy • 2012 - TypeScript
• 2014 – Swift
• 2003 – Scala
References:
• https://s3.amazonaws.com/ppt-download/computerlanguages-
140422105553-phpapp01.pdf?
• http://www.site.uottawa.ca/~nat/Courses/csi3120_2007/handouts/notes/
02_History.ppt
• https://s3.amazonaws.com/ppt-download/lect1-
introductiontoprogramminglanguages-130130013038-phpapp02.pdf?
• Wikipedia, the free encyclopedia
End of slides…