Sei sulla pagina 1di 18

STRUCTURES OF PROGRAMMING LANGUAGES

PRELIMINARIES
Contents
 Use of Languages
 Natural Vs Programming Languages
 Programming Domains
 Language Evaluation Criteria
 Influences on Language Design
 Language Categories
 Language Design Trade-offs
 Compilers and Interpreters
 Programming Environments
The Use of Languages

“Communication”
Natural Vs Programming

 Communicating parties
 Mode of Communication
 What is being transferred
The Structure of the Languages
Requisites of Communication

“Common Language”
Programming Domains

 Scientific Applications
 Business Applications
 Artificial Intelligence
 Systems Programming
 Scripting Languages
 Special-Purpose Languages
Language Evaluation Criteria

 Readability
 Writability
 Reliability
 Cost
Language Evaluation Criteria

Readability- ease with which programs can be


read and understood
- Overall Simplicity

- Orthogonality

- Control Statements

- Data Types and Structures

- Syntax Considerations
Language Evaluation Criteria

 Overall Simplicity
- a language that has a large number of
basic components is more difficult to learn
than one with small number of basic
components
- feature simplicity- having more than one
way to accomplish a particular operation
- operator overloading- a single operator has
more than one meaning
Language Evaluation Criteria

 Orthogonality
- means that a relatively small set of primitive
constructs can be combined in a relatively
small number of ways to build the control and
data structures of the language
Language Evaluation Criteria

 Control Statements
- the execution order
 Data Types and Structures
- identifiers
- special words
- form and meanings
 Syntax Consideration
Language Evaluation Criteria

Writability- measure of how easily a language


can be used to create programs for chosen
problem domain
- Simplicity and Orthogonality

- Support for Abstraction

- Expressivity
Language Evaluation Criteria

 Simplicity and Orthogonality


- large number of dificult construct, some
programmers may not be familiar with all of
them, thus will lead to misuse and disuse
Language Evaluation Criteria

 Support for Abstraction


- ability to define and then use complicated
structures or operations in ways that allow
many of the details to be ignored
- process abstraction
- data abstraction
Language Evaluation Criteria

Reliability- it performs to its specification under


all conditions
- Type Checking

- Exception Handling

- Allasing

- Readability and Writability


Language Evaluation Criteria

Cost
- Training Programmers

- Writing Programs

- Compiling

- Executing Programs

- Language Implementation System

- Poor Reliability

- Maintenance

Potrebbero piacerti anche