Programming Languages
What is a Programming Languages
• A programming language is a set of rules
that provides a way of telling a computer
what operations to perform

A programming language is a tool for developing

executable models for a class of problem
domains.
Levels of Programming Languages
High-level program
class Triangle {
class Triangle {
...
...
float surface()
float surface()
return b*h/2;
return b*h/2;
}
}

Executable Machine code
0001001001000101
0001001001000101
0010010011101100
0010010011101100
10101101001...
10101101001...

Low-level program
LOAD r1,b
LOAD r1,b
LOAD r2,h
LOAD r2,h
MUL r1,r2
MUL r1,r2
DIV r1,#2
DIV r1,#2
RET
RET
The principal paradigms
•
•
•
•

Imperative Programming (C)
Object-Oriented Programming (C++)
Logic/Declarative Programming (Prolog)
Functional/Applicative Programming (Lisp)
High-level Languages

• FORTRAN
– FORmula TRANslation.
– Developed at IBM in the mid-1950s.
– Designed for scientific and mathematical
applications by scientists and engineers.
High-level Languages

• COBOL
– COmmon Business Oriented Language.
– Developed in 1959.
– Designed to be common to many different
computers.
– Typically used for business applications.
High-level Languages

• BASIC
– Beginner’s All-purpose Symbolic Instruction Code.
– Developed at Dartmouth College in mid 1960s.
– Developed as a simple language for students to
write programs with which they could interact
through terminals.
High-level Languages

•C
– Developed by Bell Laboratories in the early 1970s.
– Provides control and efficiency of assembly
language while having third generation language
features.
– Often used for system programs.
– UNIX is written in C.
High-level Languages

• C++
– It is C language with additional features.
– Widely used for developing system and
application software.
– Graphical user interfaces can be developed easily
with visual programming tools.
High-level Languages

• JAVA
– An object-oriented language similar to C++ that
eliminates lots of C++’s problematic features
– Allows a web page developer to create programs
for applications, called applets that can be used
through a browser.
– Objective of JAVA developers is that it be
machine, platform and operating system
independent.
Markup Languages

• HTML
– HyperText Markup Language.
– Used on the Internet and the World Wide Web
(WWW).
– Web page developer puts brief codes called tags
in the page to indicate how the page should be
formatted.
High-level Languages

• XML
– Extensible Markup Language.
– A language for defining other languages.
Bibliography

coursera. (N.D, N.D N.D). Programming Languages. Retrieved 1
9, 2014, from coursera:
https://www.coursera.org/course/proglang
en.wikipedia. (2013, 12 31). List of programming languages.
Retrieved 1 9, 2014, from en.wikipedia.:
http://en.wikipedia.org/wiki/List_of_programming_languages
Weimer, W. (N.D, N.D N.D). Programming Languages.
Retrieved 1 9, 2014, from udacity:
https://www.udacity.com/course/cs262

Programming languages

  • 1.
  • 2.
    What is aProgramming Languages • A programming language is a set of rules that provides a way of telling a computer what operations to perform A programming language is a tool for developing executable models for a class of problem domains.
  • 3.
    Levels of ProgrammingLanguages High-level program class Triangle { class Triangle { ... ... float surface() float surface() return b*h/2; return b*h/2; } } Executable Machine code 0001001001000101 0001001001000101 0010010011101100 0010010011101100 10101101001... 10101101001... Low-level program LOAD r1,b LOAD r1,b LOAD r2,h LOAD r2,h MUL r1,r2 MUL r1,r2 DIV r1,#2 DIV r1,#2 RET RET
  • 4.
    The principal paradigms • • • • ImperativeProgramming (C) Object-Oriented Programming (C++) Logic/Declarative Programming (Prolog) Functional/Applicative Programming (Lisp)
  • 5.
    High-level Languages • FORTRAN –FORmula TRANslation. – Developed at IBM in the mid-1950s. – Designed for scientific and mathematical applications by scientists and engineers.
  • 6.
    High-level Languages • COBOL –COmmon Business Oriented Language. – Developed in 1959. – Designed to be common to many different computers. – Typically used for business applications.
  • 7.
    High-level Languages • BASIC –Beginner’s All-purpose Symbolic Instruction Code. – Developed at Dartmouth College in mid 1960s. – Developed as a simple language for students to write programs with which they could interact through terminals.
  • 8.
    High-level Languages •C – Developedby Bell Laboratories in the early 1970s. – Provides control and efficiency of assembly language while having third generation language features. – Often used for system programs. – UNIX is written in C.
  • 9.
    High-level Languages • C++ –It is C language with additional features. – Widely used for developing system and application software. – Graphical user interfaces can be developed easily with visual programming tools.
  • 10.
    High-level Languages • JAVA –An object-oriented language similar to C++ that eliminates lots of C++’s problematic features – Allows a web page developer to create programs for applications, called applets that can be used through a browser. – Objective of JAVA developers is that it be machine, platform and operating system independent.
  • 11.
    Markup Languages • HTML –HyperText Markup Language. – Used on the Internet and the World Wide Web (WWW). – Web page developer puts brief codes called tags in the page to indicate how the page should be formatted.
  • 12.
    High-level Languages • XML –Extensible Markup Language. – A language for defining other languages.
  • 13.
    Bibliography coursera. (N.D, N.DN.D). Programming Languages. Retrieved 1 9, 2014, from coursera: https://www.coursera.org/course/proglang en.wikipedia. (2013, 12 31). List of programming languages. Retrieved 1 9, 2014, from en.wikipedia.: http://en.wikipedia.org/wiki/List_of_programming_languages Weimer, W. (N.D, N.D N.D). Programming Languages. Retrieved 1 9, 2014, from udacity: https://www.udacity.com/course/cs262