Programming languages • A Programming language is a notational system for describing tasks/computations in a machine and human readable form. • Most computer languages are designed to facilitate certain operations and not others: numerical computation, or text manipulation, or I/O. • More broadly, a computer language typically embodies a particular programming paradigm.
Characteristics of a programming language: Every language has syntax and semantics: • Syntax: The syntax of a program is the form of its declarations, expressions, statements and program units. • Semantic: The semantic of a program is concerned with the meaning of its program.
Abdelghani Bellaachia, Advanced Software Paradigms Page: 1
Which programming language? • Since a task can be solved in different ways (paradigms), the language used to describe the solution differs in abstractions, structures due to the way in which the problem is solved. • There is no theory that dictates the best paradigm to solve a particular problem. • Efforts by Sebesta in his Concepts of Programming Languages book: • He based his evaluation criteria on three factors and 9 characteristics. • The three criteria (R,W,R) are: Readability Writability Reliability
Abdelghani Bellaachia, Advanced Software Paradigms
Page: 2
• The nine characteristics are: Simpilicity/orthogonality(R,W,R): • “Orthogonality in a programming language 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” [Sebesta] • Relatively small set of primitive constructions combined in a number (of logically consistent) ways to provide the required control and data structures. • The concepts of a programming language do not interfere with each other: different methods of passing parameters. • Non-orthogonality: means exceptions to the general language rules, which make it harder to learn. It means that