Lesson3 IntroductionToCompilingA
Lesson3 IntroductionToCompilingA
Lesson 3
ICS 40
Topic Outline:
Evolution of Programming Languages
Language Designs
Lesson 3
Introduction to Compiling (Cont.)
Evolution: Classification by
Generation
First-Generation Languages
Machine languages
Second-Generation Languages
Assembly Languages
Third-Generation Languages
Fortran
COBOL
Lisp
C
C++
C#
Java
EBY Compilers Lesson 3
Evolution: Classification by
Generation
Fourth-Generation Languages
NOMAD – for report generation
SQL – database queries
Postscript – text formatting
Fifth-Generation Languages
Logic & constraint-based languages
Prolog
OPS5
Simplicity * * *
Data Types * * *
Syntax Design * * *
Abstraction * *
Expressivity * *
Type Checking *
Exception Handling *
EBY Compilers Lesson 3
History of Ideas: Abstraction
Modes of abstraction
Via languages/compilers
Higher-level code
Via subroutine
Abstract interface to behavior
Via modules
Export interfaces: hide implementation
Via abstract data types
Bundle data with its operations