A Quick Overview of Languages

Download Report

Transcript A Quick Overview of Languages

A Quick Overview of Languages
FORTRAN
•
•
•
•
•
•
•
•
•
Designed in 1955
First release of the compiler in 1957
Algebraic in nature
Scientific (numeric not string oriented)
Card format rules
Layou … main then subroutines/functions
Implicit variable declaration
Initially arithmetic if not logical if
Labels with goto statement number not end if
Lisp
•
•
•
•
Functional not procedural: also interpreted
Simple and concise
List processing: atoms and lists
Many functions. Two important: car cdr
• Notice not easy to read
• Author didn’t do the same problem as example
• Many features of standard languages hard to
find
• Loops with recursion , etc.
Algol
• Number of variations before standardized
• Major breakthroughs
–
–
–
–
block structured
value and reference parameters
procedures could be recursive
dynamic arrays
• Not revolutionary but more towards today’s
general programming languages
Cobol
•
•
•
•
•
Business language
Report oriented (compare to previous langs)
Rearranging and format oriented.
Procedural but barely (no parameters)
Four main divisions
– identification, environment, data, procedure
• Database support
PL/1
• Business needed more numerical power
• Science needed more sophisticated means
of managing volumes of results
• PL/1 was to be THE universal language
• Introduction of
– pointers, exception handling, concurrency
Algol 68 and Pascal
• PL/1 was not as orthogonal as desired
• Algol 68 resolved that but was never widely
accepted.
• Pascal was a small variant of Algol 60
developed for teaching. It did not contain all
features that a professional developer
needed.
– Passing arrays as parameters awkward.. One
size/type only
– managing large systems of routines/libraries
C
•
•
•
•
Grew out of UNIX/Bell Labs in 70s
Predecessor was used to design UNIX
Many who studied UNIX, learned c
Language without many constraints
– no type check on parameters/addresses
• Free distribution with UNIX
• For years no standard existed
• c++ improvements made it more widely
acceptable in 1990
Prolog
•
•
•
•
Logic programming not procedural
Rule based
Database flavor
AI applications
Ada
• Move by DOD to minimize the problem of
managing all of government code
subcontracted in so many different languages
• Massive effort. Most thought the government
would drive programming in that direction.
NOT
• Good for exception handling and
encapsulation
• Limited object-oriented language
Smalltalk
• “Pure” Object oriented
• Basis of comparison for all languages which
claim to be object-oriented
• Objects passing messages model
• includes an environment for development
C++
• Object oriented extensions
• Cleans up and standardizes c
Java
•
•
•
•
•
Platform independent
Interpreted by Java virtual machine
Web based to spread load to client side
Security is important
Also runs outside of web
– applets in web
– applications outside