10
Programming Language 1

Programming Language 1. Programming language A programming language is a machine-readable artificial language designed to express computations that can

Embed Size (px)

Citation preview

Page 1: Programming Language 1. Programming language A programming language is a machine-readable artificial language designed to express computations that can

Programming Language

1

Page 2: Programming Language 1. Programming language A programming language is a machine-readable artificial language designed to express computations that can

Programming language

• A programming language is a machine-readable artificial language designed to express computations that can be performed by a machine, particularly a computer. Programming languages can be used to create programs that specify the behavior of a machine, to express algorithms precisely, or as a mode of human communication.

2

Page 3: Programming Language 1. Programming language A programming language is a machine-readable artificial language designed to express computations that can

Syntax • A programming language's surface form is

known as its syntax. Most programming languages are purely textual; they use sequences of text including words, numbers, and punctuation, much like written natural languages.

• The syntax of a language describes the possible combinations of symbols that form a syntactically correct program. The meaning given to a combination of symbols is handled by semantics (either formal or hard-coded in a reference implementation).

Page 4: Programming Language 1. Programming language A programming language is a machine-readable artificial language designed to express computations that can

History• Programmers of early 1950s computers, notably UNIVAC I

and IBM 701, used machine language programs, that is, the first generation language (1GL). 1GL programming was quickly superseded by similarly machine-specific.

• Second generation languages (2GL) known as assembly languages or "assembler". Later in the 1950s, assembly language programming, which had evolved to include the use of macro instructions, was followed by the development of "third generation" programming languages (3GL), such as FORTRAN, LISP, and COBOL.

• 3GLs are more abstract and are "portable", or at least implemented similar on computers that do not support the same native machine code. Updated versions of all of these 3GLs are still in general use, and each has strongly influenced the development of later languages. At the end of the 1950s, the language formalized as Algol 60 was introduced, and most later programming languages are, in many respects, descendants of Algol.

Page 5: Programming Language 1. Programming language A programming language is a machine-readable artificial language designed to express computations that can

• The period from the 1960s to the late 1970s brought the development of the major language paradigms now in use, though many aspects were refinements of ideas in the very first Third-generation programming languages.

• he 1960s and 1970s also saw considerable debate over the merits of structured programming, and whether programming languages should be designed to support it. Edsger Dijkstra, in a famous 1968 letter published in the Communications of the ACM, argued that GOTO statements should be eliminated from all "higher level" programming languages.

Page 6: Programming Language 1. Programming language A programming language is a machine-readable artificial language designed to express computations that can

• The 1980s were years of relative consolidation. C++ combined object-oriented and systems programming. The United States government standardized Ada, a systems programming language intended for use by defense contractors. In Japan and elsewhere, vast sums were spent investigating so-called "fifth generation" languages that incorporated logic programming constructs.

• The functional languages community moved to standardize ML and Lisp. Rather than inventing new paradigms, all of these movements elaborated upon the ideas invented in the previous decade.

Page 7: Programming Language 1. Programming language A programming language is a machine-readable artificial language designed to express computations that can

• One important trend in language design during the 1980s was an increased focus on programming for large-scale systems through the use of modules, or large-scale organizational units of code. Modula-2, Ada, and ML all developed notable module systems in the 1980s, although other languages, such as PL/I, already had extensive support for modular programming. Module systems were often wedded to generic programming constructs.

Page 8: Programming Language 1. Programming language A programming language is a machine-readable artificial language designed to express computations that can

• The rapid growth of the Internet in the mid-1990s created opportunities for new languages. Perl, originally a Unix scripting tool first released in 1987, became common in dynamic Web sites. Java came to be used for server-side programming.

• These developments were not fundamentally novel, rather they were refinements to existing languages and paradigms, and largely based on the C family of programming languages.

Page 9: Programming Language 1. Programming language A programming language is a machine-readable artificial language designed to express computations that can

• Programming language evolution continues, in both industry and research. Current directions include security and reliability verification, new kinds of modularity (mixins, delegates, aspects), and database integration such as Microsoft's LINQ.

Page 10: Programming Language 1. Programming language A programming language is a machine-readable artificial language designed to express computations that can

• The 4GLs are examples of languages which are domain-specific, such as SQL, which manipulates and returns sets of data rather than the scalar values which are canonical to most programming languages. Perl, for example, with its 'here document' can hold multiple 4GL programs, as well as multiple JavaScript programs, in part of its own perl code and use variable interpolation in the 'here document' to support multi-language programming.