SlideShare a Scribd company logo
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
Affiliated Institution of G.G.S.IP.U, Delhi
BBA(Gen)
Computer Fundamentals
(17107)
BHARTI DEWANI
ASSISTANT PROFESSOR, IT
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
Generations of
Programming Languages
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
The five generations
• We generally count five "generations" of
programming languages
• Each generation represents technological
advances
• "Advances" may just reflect changing
preferences
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
First generation
• Examples: FORTRAN, COBOL, BASIC
• Key concept: Language designs were based directly on
available hardware
• Efficiency was everything
• Language names are acronyms and are typically
spelled with all capital letters
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
1G: Primitive data types
• Data types reflect types defined by the hardware
• Multiple types of numbers (fixed, floating, various
sizes)
• Characters and booleans are represented as numbers
• No user-defined types
• Identifiers have types, but type safety is not a big
concern
• Identifiers bound directly to storage locations--no
dynamic storage
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
IG: Data Structure
• Data structures are based on those of machine
language
– that is, single contiguous blocks of storage
• No nesting of data structures (just arrays, records)
– Arrays represent a block of locations (FORTRAN,
BASIC)
– Records represent layout of data on a punched
card (COBOL)
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
1G: Control structures
• Control structures are based on those of
machine language
– Multiple kinds of GOTOs
– Little nesting of control structures (exception: DO
loops in FORTRAN)
– No recursion (exception: BASIC)
– A single way to pass parameters (usually by
reference)
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
Second generation
• Algol 60 was the premier 2G language
• Key concepts: Abstraction and generalization
– Algol 60 introduced the notion of a "virtual
machine," not tied to particular hardware
– Algol 60 introduced real and integer data types
not tied to a particular bit representation, and
generalized loop and selection (if) statements
• Alan Perlis: "Algol was indeed an achievement; it was
a significant advance on most of its successors."
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
15-9
2G: Data structures
Machine independence seen as a valid concern
Simplification and abstraction of numeric types (real,
integer)
Arrays with user-defined lower bounds (not just 1)
Dynamic (expandable) arrays
Booleans introduced, but still not characters
Strings could be used for output only
Strong typing
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
15-10
2G: Control structures
True hierarchical (nested) control structures
Generalized control structures
Often overly complex and baroque (e.g. for,
switch)
"Blocks" provide fine control over nesting, scopes
Could pass parameters by value
Could pass parameters by name
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
Third generation
• Example: Pascal
• Key concepts: Simplicity and generality
– More but simpler control structures
– Expanded and generalized data types
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
3G: Data Structures
• Recognition that not everything is a number
• Language support for strings (or at least characters)
• New data types introduced:
– sets
– subranges
– enumeration types
• User-defined data types
• Hierarchical nesting of data types
• User-controllable memory allocation
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
3G: Control structures
• More but simpler control structures
– three kinds of loop replace Algol's single for loop
• Case statements introduced
– called "switch" in C, Java
• Simpler control structures can be more
efficient as well as easier to understand
• "Call by name" parameter transmission was
discarded
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
Fourth generation
• Examples are Ada, Modula
• Key concept: Emphasis on data abstraction
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
4G: Data structures
• Separation of specification and definition
– Other programmers and program parts can access
the specification, not the code
– This gives better support for information hiding
– But this leads to duplication, which is error-prone
• Name access by mutual consent
• Generic or polymorphic subprograms
• Exceptions (errors) attain the status of a data
type
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
4G: Control structures
• Concurrent programming, that is, multiple
communicating processes
• Protected or synchronized types
• Functions can be overloaded (operators, too)
• Exception handlers result in a new flow of control
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
Fifth generation
• Key concept: No general agreement on what 5G is
• Prolog was the basis of the Japanese "Fifth-
Generation Project"
– The Fifth-Generation Project was not a success
• O-O languages are now the dominant paradigm
– They are the de facto fifth generation
• But logic programming has a prior claim to the name
• Functional programming is also a contender for 5G
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
Fifth generation (Contd.)
• Fifth generation (Smalltalk, Java)
• Key concept: Object orientation
• Three essential features:
– Abstract data types (grouping of data and
methods)
– Inheritance (of types and methods, with
overriding)
– Messages (dynamic binding to methods)
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
5G: Data structures
• Everything (or almost everything) is an object
• All behaviors (methods) are encapsulated within
objects
• Objects are arranged in a hierarchy
• But object space is still "flat," with little or no nesting
– Java's inner classes are too little, too late
• Data and methods are inherited
• Data and methods can be overridden
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
5G: Control structures
• Instead of calling functions, send messages to
objects
– Variables can hold different objects at different
times
• Most O-O languages have support for GUI events
– An event is a message sent "to whom it may
concern"
– Event-handling may be container-based (Mac, Java
1.0)
– Better event-handling is listener-based (Java 1.1)
TRINITY INSTITUTE OF PROFESSIONAL STUDIES
Sector – 9, Dwarka Institutional Area, New Delhi-75
Thank you….

More Related Content

PPTX
K overview
PPTX
Object model
PPT
V47 Ch2 Dev Marketing Strategies Lesley Yu
PPTX
Accounting concepts and conventions
PPT
Accounting concepts and conventions
PPTX
MARKETING (STRATEGIC UNIT)
PPTX
Strategic Business Unit
PPT
Strategic business unit
K overview
Object model
V47 Ch2 Dev Marketing Strategies Lesley Yu
Accounting concepts and conventions
Accounting concepts and conventions
MARKETING (STRATEGIC UNIT)
Strategic Business Unit
Strategic business unit

Similar to Computer fundamentals (20)

PPTX
Introduction to programming language using c
PPTX
FEDT VB NET- Creating VB .Net Project
PPTX
JAVA PROGRAMMING- OOP Concept
PPTX
Introduction to Information Technology- Operating system
PPTX
FEDT and VB .NET
PDF
Java programming
PPTX
Introduction to Operating Systems
PPTX
INTRODUCTION TO OPERATING SYSTEM
PPTX
Mobile Computing Architecture
PPTX
BCA-Mobile Computing- BASICS OF MOBILE COMPUTING
PPTX
Object Oriented Programming Concepts
PPTX
General oop concept
PDF
Student handbook xii
PPTX
Java Programming- Introduction to Java Applet Programs
PPTX
Introduction to information technology
PDF
Introduction to Programming Language using C
PPTX
Operating Systems
PPTX
INTRODUCTION TO INFORMATION TECHNOLOGY- IT Basics
PPTX
Computer Networks- Network Basics
Introduction to programming language using c
FEDT VB NET- Creating VB .Net Project
JAVA PROGRAMMING- OOP Concept
Introduction to Information Technology- Operating system
FEDT and VB .NET
Java programming
Introduction to Operating Systems
INTRODUCTION TO OPERATING SYSTEM
Mobile Computing Architecture
BCA-Mobile Computing- BASICS OF MOBILE COMPUTING
Object Oriented Programming Concepts
General oop concept
Student handbook xii
Java Programming- Introduction to Java Applet Programs
Introduction to information technology
Introduction to Programming Language using C
Operating Systems
INTRODUCTION TO INFORMATION TECHNOLOGY- IT Basics
Computer Networks- Network Basics
Ad

More from Trinity Dwarka (20)

PPTX
Why BAJMC in Trinity Dwarka
PPTX
Career Options after BCA
PPTX
Principles of Management-Management-Concept & Meaning
PPTX
Principles of Management- Management Process & Functions
PPTX
Principles of Management- Managerial Levels & Roles-
PPTX
Management-Concept & Meaning
PPTX
Principles of Management- Planning
PPTX
Organizing Authority & Responsibility- Principles of Management
PPTX
Staffing- Principles of Management
PPTX
Directing-Principles of Management
PPTX
Dimensional Modelling-Data Warehouse & Data Mining
PPTX
Data Preprocessing- Data Warehouse & Data Mining
PPTX
Linux Environment- Linux vs Unix
PPTX
Linux Environment- Linux Basics
PPTX
Database Management System
PPTX
E-Commerce- Introduction to E-Commerce
PPTX
DIGITAL ELECTRONICS- Minimization Technique Karnaugh Map
PPTX
DIGITAL ELECTRONICS- Number System
PPTX
Digital Electronics -Boolean Algebra
PPTX
DIGITAL ELECTRONICS- Logic Gates
Why BAJMC in Trinity Dwarka
Career Options after BCA
Principles of Management-Management-Concept & Meaning
Principles of Management- Management Process & Functions
Principles of Management- Managerial Levels & Roles-
Management-Concept & Meaning
Principles of Management- Planning
Organizing Authority & Responsibility- Principles of Management
Staffing- Principles of Management
Directing-Principles of Management
Dimensional Modelling-Data Warehouse & Data Mining
Data Preprocessing- Data Warehouse & Data Mining
Linux Environment- Linux vs Unix
Linux Environment- Linux Basics
Database Management System
E-Commerce- Introduction to E-Commerce
DIGITAL ELECTRONICS- Minimization Technique Karnaugh Map
DIGITAL ELECTRONICS- Number System
Digital Electronics -Boolean Algebra
DIGITAL ELECTRONICS- Logic Gates
Ad

Recently uploaded (20)

PDF
Supply Chain Operations Speaking Notes -ICLT Program
PPTX
Institutional Correction lecture only . . .
PDF
Classroom Observation Tools for Teachers
PPTX
Pharmacology of Heart Failure /Pharmacotherapy of CHF
PDF
VCE English Exam - Section C Student Revision Booklet
PDF
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
PPTX
Pharma ospi slides which help in ospi learning
PDF
Computing-Curriculum for Schools in Ghana
PPTX
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
Ā 
PDF
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
PDF
A GUIDE TO GENETICS FOR UNDERGRADUATE MEDICAL STUDENTS
PDF
RMMM.pdf make it easy to upload and study
PPTX
Presentation on HIE in infants and its manifestations
PDF
Chinmaya Tiranga quiz Grand Finale.pdf
PDF
2.FourierTransform-ShortQuestionswithAnswers.pdf
PDF
OBE - B.A.(HON'S) IN INTERIOR ARCHITECTURE -Ar.MOHIUDDIN.pdf
PDF
A systematic review of self-coping strategies used by university students to ...
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
PPTX
Microbial diseases, their pathogenesis and prophylaxis
PPTX
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
Supply Chain Operations Speaking Notes -ICLT Program
Institutional Correction lecture only . . .
Classroom Observation Tools for Teachers
Pharmacology of Heart Failure /Pharmacotherapy of CHF
VCE English Exam - Section C Student Revision Booklet
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
Pharma ospi slides which help in ospi learning
Computing-Curriculum for Schools in Ghana
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
Ā 
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
A GUIDE TO GENETICS FOR UNDERGRADUATE MEDICAL STUDENTS
RMMM.pdf make it easy to upload and study
Presentation on HIE in infants and its manifestations
Chinmaya Tiranga quiz Grand Finale.pdf
2.FourierTransform-ShortQuestionswithAnswers.pdf
OBE - B.A.(HON'S) IN INTERIOR ARCHITECTURE -Ar.MOHIUDDIN.pdf
A systematic review of self-coping strategies used by university students to ...
Abdominal Access Techniques with Prof. Dr. R K Mishra
Microbial diseases, their pathogenesis and prophylaxis
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...

Computer fundamentals

  • 1. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 Affiliated Institution of G.G.S.IP.U, Delhi BBA(Gen) Computer Fundamentals (17107) BHARTI DEWANI ASSISTANT PROFESSOR, IT
  • 2. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 Generations of Programming Languages
  • 3. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 The five generations • We generally count five "generations" of programming languages • Each generation represents technological advances • "Advances" may just reflect changing preferences
  • 4. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 First generation • Examples: FORTRAN, COBOL, BASIC • Key concept: Language designs were based directly on available hardware • Efficiency was everything • Language names are acronyms and are typically spelled with all capital letters
  • 5. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 1G: Primitive data types • Data types reflect types defined by the hardware • Multiple types of numbers (fixed, floating, various sizes) • Characters and booleans are represented as numbers • No user-defined types • Identifiers have types, but type safety is not a big concern • Identifiers bound directly to storage locations--no dynamic storage
  • 6. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 IG: Data Structure • Data structures are based on those of machine language – that is, single contiguous blocks of storage • No nesting of data structures (just arrays, records) – Arrays represent a block of locations (FORTRAN, BASIC) – Records represent layout of data on a punched card (COBOL)
  • 7. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 1G: Control structures • Control structures are based on those of machine language – Multiple kinds of GOTOs – Little nesting of control structures (exception: DO loops in FORTRAN) – No recursion (exception: BASIC) – A single way to pass parameters (usually by reference)
  • 8. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 Second generation • Algol 60 was the premier 2G language • Key concepts: Abstraction and generalization – Algol 60 introduced the notion of a "virtual machine," not tied to particular hardware – Algol 60 introduced real and integer data types not tied to a particular bit representation, and generalized loop and selection (if) statements • Alan Perlis: "Algol was indeed an achievement; it was a significant advance on most of its successors."
  • 9. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 15-9 2G: Data structures Machine independence seen as a valid concern Simplification and abstraction of numeric types (real, integer) Arrays with user-defined lower bounds (not just 1) Dynamic (expandable) arrays Booleans introduced, but still not characters Strings could be used for output only Strong typing
  • 10. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 15-10 2G: Control structures True hierarchical (nested) control structures Generalized control structures Often overly complex and baroque (e.g. for, switch) "Blocks" provide fine control over nesting, scopes Could pass parameters by value Could pass parameters by name
  • 11. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 Third generation • Example: Pascal • Key concepts: Simplicity and generality – More but simpler control structures – Expanded and generalized data types
  • 12. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 3G: Data Structures • Recognition that not everything is a number • Language support for strings (or at least characters) • New data types introduced: – sets – subranges – enumeration types • User-defined data types • Hierarchical nesting of data types • User-controllable memory allocation
  • 13. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 3G: Control structures • More but simpler control structures – three kinds of loop replace Algol's single for loop • Case statements introduced – called "switch" in C, Java • Simpler control structures can be more efficient as well as easier to understand • "Call by name" parameter transmission was discarded
  • 14. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 Fourth generation • Examples are Ada, Modula • Key concept: Emphasis on data abstraction
  • 15. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 4G: Data structures • Separation of specification and definition – Other programmers and program parts can access the specification, not the code – This gives better support for information hiding – But this leads to duplication, which is error-prone • Name access by mutual consent • Generic or polymorphic subprograms • Exceptions (errors) attain the status of a data type
  • 16. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 4G: Control structures • Concurrent programming, that is, multiple communicating processes • Protected or synchronized types • Functions can be overloaded (operators, too) • Exception handlers result in a new flow of control
  • 17. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 Fifth generation • Key concept: No general agreement on what 5G is • Prolog was the basis of the Japanese "Fifth- Generation Project" – The Fifth-Generation Project was not a success • O-O languages are now the dominant paradigm – They are the de facto fifth generation • But logic programming has a prior claim to the name • Functional programming is also a contender for 5G
  • 18. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 Fifth generation (Contd.) • Fifth generation (Smalltalk, Java) • Key concept: Object orientation • Three essential features: – Abstract data types (grouping of data and methods) – Inheritance (of types and methods, with overriding) – Messages (dynamic binding to methods)
  • 19. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 5G: Data structures • Everything (or almost everything) is an object • All behaviors (methods) are encapsulated within objects • Objects are arranged in a hierarchy • But object space is still "flat," with little or no nesting – Java's inner classes are too little, too late • Data and methods are inherited • Data and methods can be overridden
  • 20. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 5G: Control structures • Instead of calling functions, send messages to objects – Variables can hold different objects at different times • Most O-O languages have support for GUI events – An event is a message sent "to whom it may concern" – Event-handling may be container-based (Mac, Java 1.0) – Better event-handling is listener-based (Java 1.1)
  • 21. TRINITY INSTITUTE OF PROFESSIONAL STUDIES Sector – 9, Dwarka Institutional Area, New Delhi-75 Thank you….