Why Study Programming Languages (PLs)? History of PLs Brief Survery of Programming Paradigms Role of PLs Attributes of a Good Language Language Standardization Internationalization
Why Study PLs?
Jun 2012
Lesson 1 Introduction, Language Design Issues
2
In 1969, Sammet listed 120 PLs that were fairly used Since 1969, many other PLs were developed Most programmers confine the use of one or two PLs Reasons are based in the underlying design concepts and their effect on language implementation
Lesson 1 Introduction, Language Design Issues
Jun 2012
3
Six Primary Reasons
1. 2. 3. 4. 5. 6.
To improve abilities in developing effective algorithms. To improve the use of existing PL. To increase vocabulary of useful programming constructs. To allow a better choice of PL. To make it easier to learn a new language. To make it easier to design a new language.
Lesson 1 Introduction, Language Design Issues 4
Jun 2012
To improve abilities in developing effective algorithms
Language features that are used properly may benefit the programmer Language features that are used improperly may waste large amounts of computer time or lead the programmer into timeconsuming logical errors.
Jun 2012
Lesson 1 Introduction, Language Design Issues
5
Recursion feature in a PL:
When used properly, it allows direct implementation of elegant and efficient algorithms. When used improperly, it causes astronomical increase in execution time Programmers who do not know its design questions and implementation difficulties may avoid using this construct. Basic knowledge allows the programmer to understand the relative cost of recursion in a particular language and be able to determine whether its use is worthy enough in a particular programming situation.
Lesson 1 Introduction, Language Design Issues
Jun 2012
6
New programming methods are introduced, such as object-oriented programming, logic
References: Ferguson, A. History of Computer Programming Languages. Wikipedia. Programming Paradigm. last accessed on Feb. 12 at http://en.wikipedia.org/wiki/Programming_para digm. Jun 2012 Lesson 1 Introduction, Language Design Issues 89