Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
16 views

Introduction: Programming Languages: July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 1

The document discusses programming languages. It begins by defining a programming language as a set of rules that tells a computer what operations to perform and provides a way to describe algorithms. It then categorizes programming languages into five generations based on their level of abstraction from machine language. First generation languages use binary machine code while higher generations like third, fourth and fifth use languages that are closer to English. It also discusses traditional languages like FORTRAN, COBOL, BASIC and C as well as object-oriented languages like C++ and Java. The document concludes by outlining some criteria for good language design including writability, readability, reliability and maintainability.

Uploaded by

ravi anand
Copyright
© © All Rights Reserved
Available Formats
Download as PPS, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views

Introduction: Programming Languages: July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 1

The document discusses programming languages. It begins by defining a programming language as a set of rules that tells a computer what operations to perform and provides a way to describe algorithms. It then categorizes programming languages into five generations based on their level of abstraction from machine language. First generation languages use binary machine code while higher generations like third, fourth and fifth use languages that are closer to English. It also discusses traditional languages like FORTRAN, COBOL, BASIC and C as well as object-oriented languages like C++ and Java. The document concludes by outlining some criteria for good language design including writability, readability, reliability and maintainability.

Uploaded by

ravi anand
Copyright
© © All Rights Reserved
Available Formats
Download as PPS, PDF, TXT or read online on Scribd
You are on page 1/ 23

Introduction: Programming

Languages

July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 1


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.
• A programming language is a set of rules for
communicating an algorithm
• It provides a linguistic framework for
describing computations

July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 2


What is a Programming Language?

A programming language is a system for describing


computation in a machine-readable and human-readable
form.

A programming language is a tool for developing


executable models for a class of problem domains.

July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 3


Types of Programming Languages

• First Generation Languages


• Second Generation Languages
• Third Generation Languages
• Fourth Generation Languages
• Fifth Generation Languages

July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 4


First Generation Languages

• Machine language
– Operation code – such as addition or
subtraction.
– Operands – that identify the data to be
processed.
– Machine language is machine dependent as it is
the only language the computer can understand.
– Very efficient code but very difficult to write.

July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 5


Second Generation Languages

• Assembly languages
– Symbolic operation codes replaced binary
operation codes.
– Assembly language programs needed to be
“assembled” for execution by the computer.
Each assembly language instruction is
translated into one machine language
instruction.
– Very efficient code and easier to write.
July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 6
Third Generation Languages

• Closer to English but included simple


mathematical notation.
– Programs written in source code which must
be translated into machine language programs
called object code.
– The translation of source code to object code
is accomplished by a machine language
system program called a compiler.

July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 7


Third Generation Languages (cont..)

• Alternative to compilation is interpretation


which is accomplished by a system
program called an interpreter.
• Common third generation languages
– FORTRAN
– COBOL
– C and C++
– Visual Basic

July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 8


Fourth Generation Languages

• A high level language (4GL) that requires


fewer instructions to accomplish a task
than a third generation language.
• Used with databases
– Query languages
– Report generators
– Forms designers
– Application generators

July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 9


Fifth Generation Languages

• Declarative languages: SQL


– Structure and elements of computer programs
– considers programs as theories of a formal
logic
• Functional: Lisp
– Also called applicative
– Everything is a function
• Logic: Prolog
– Based on mathematical logic
– Rule- or Constraint-based
July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 10
Programming Languages

• Two broad groups


– Traditional programming languages
• Sequences of instructions
• First, second and some third generation languages
– Object-oriented languages
• Objects are created rather than sequences of
instructions
• Some third generation, and fourth and fifth
generation languages

July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 11


Traditional Programming Languages

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

July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 12


Traditional Programming Languages
(cont’d.)
• COBOL
– COmmon Business Oriented Language.
– Developed in 1959 by Committee on Data
Systems Languages (CODASYL).
– Designed to be common to different
computers.
– Typically used for business applications.

July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 13


Traditional Programming Languages
(cont’d.)
• 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.

July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 14


Traditional Programming Languages
(cont’d.)
• 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.

July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 15


Object-Oriented Programming 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.

July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 16


Object-Oriented Programming Languages
(cont’d.)
• 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 may be
machine, platform and operating system
independent.

July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 17


Special Programming Languages
(cont’d.)

• 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.

July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 18


Special Programming Languages
(cont’d.)
• XML
– Extensible Markup Language.
– A language for defining other languages.

July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 19


Criteria in a good language design

• Writability: The quality of a language that enables a programmer


to use it to express a computation clearly, correctly, concisely,
and quickly.
• Readability: The quality of a language that enables a
programmer to understand and comprehend the nature of a
computation easily and accurately.
• Reliability: The quality of a language that assures a program will
not behave in unexpected or disastrous ways during execution.

July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 20


Criteria (Continued)

 Maintainability: The quality of a language that eases errors can


be found and corrected and new features added.
 Generality: The quality of a language that avoids special cases
in the availability or use of constructs and by combining closely
related constructs into a single more general one.
 Uniformity: The quality of a language that similar features
should look similar and behave similar.

21
July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL
Criteria (Continued)

 Extensibility: The quality of a language that provides some


general mechanism for the user to add new constructs to a
language.
 Standardability: The quality of a language that allows programs
written to be transported from one computer to another without
significant change in language structure.
 Implementability: The quality of a language that provides a
translator or interpreter that can be written.

22
July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL
Back-end (Server-side) table in most popular websites
Websites ASP.NET C C++ D Erlang Go Hack Java JavaScript Perl PHP Python Ruby Scala Xhp

Google.com No Yes Yes No No Yes No Yes No No No Yes No No No

YouTube.com No Yes Yes No No Yes No Yes No No No Yes No No No

Facebook.com No No Yes Yes Yes No Yes Yes No No Yes Yes No No Yes

Yahoo No No No No No No No No Yes No Yes No No No No

Amazon.com No No Yes No No No No Yes No Yes No No No No No

Wikipedia.org No No No No No No No No No No Yes No No No No

Twitter.com No No Yes No No No No Yes No No No No Yes Yes No

Bing Yes No No No No No No No No No No No No No No

eBay.com No No No No No No No Yes Yes No No No No Yes No

MSN.com Yes No No No No No No No No No No No No No No

Microsoft Yes No No No No No No No No No No No No No No

Linkedin.com No No No No No No No Yes Yes No No No No Yes No

Pinterest No No No No Yes No No No No No No Yes No No No

WordPress.co
No No No No No No No No Yes No Yes No No No No
m

July 31, 2021 VBU/MBA/Kujur/CAM/U I/CPL 23

You might also like