Home | Portfolio | Quick Quote | Login | Contact
Call us toll-free at (888) 511-4850
Program Languages

Classifications

  • Each language takes units of these well-behaved statements and combines them using some ordering system. Depending on the language, differing methods of grouping these elementary statements exist. This allows one to write programs that are able to cover a variety of input, instead of being limited to a small number of cases. Furthermore, beyond the data manipulation instructions, other typical instructions in a language are those used for control flow (branches, definitions by cases, loops, backtracking, functional composition).

                                     * [[Array programming language]]*
                                     * [[Concatenate programming language]]*
                                     * [[Concurrent programming language]]*
                                     * [[Declarative programming language]]*
                                     * [[Domain-specific programming language]]*
                                     * [[Dynamic programming language]]*
                                     * [[Educational programming language]]*
                                     * [[Esoteric programming language]]*
                                     * [[Functional programming language]]*
                                     * [[General-purpose programming language]]*
                                     * [[Logical programming|Logic programming language]]*
                                     * [[Object-oriented programming language]]*
                                     * [[Procedural programming|Procedural programming language]]*
                                     * [[Scripting programming language]]*

Design Philosophies

  • For the above-mentioned purposes, each language has been developed using a special design or philosophy. Some aspect or another is particularly stressed by the way the language uses data structures, or by which its special notation encourages certain ways of solving problems or expressing their structure.

  • Since programming languages are artificial languages, they require a high degree of discipline to accurately specify which operations are desired.

  • Programming languages are not error tolerant; however, the burden of recognizing and using the special vocabulary is reduced by help messages generated by the programming language implementation. There are a few languages which offer a high degree of freedom in allowing self-modification in which a program re-writes parts of itself to handle new cases.

  • Typically, only machine language, Prolog, PostScript, and the members of the Lisp family (Common Lisp, Scheme) provide this capability. In MUMPS language this technique is called dynamic recompilation; emulators and other virtual machines exploit this technique for greater performance.

  • There are a variety of ways to classify programming languages. The distinctions are not clear-cut; a particular language standard may be implemented in multiple classifications. For example, a language may have both compiled and interpreted implementations.

  • In addition, most compiled languages contain some run-time interpreted features. The most notable example is the familiar I/O format string, which is written in a specialized, little language and which is used to describe how to convert program data to or from an external representation. This string is typically interpreted at run time by a specialized format-language interpreter program included in the run-time support libraries. Many programmers have found the flexibility of this arrangement to be very valuable.

About the history...

  • The development of programming languages, unsurprisingly, follows closely the development of the physical and electronic processes used in today's computers.

  • Charles Babbage is often credited with designing the first computer-like machines, which had several programs written for them (in the equivalent of assembly language) by Ada Lovelace.

  • In the 1940s the first recognizably modern, electrically powered computers were created. Some military calculation needs were a driving force in early computer development, such as encryption, decryption, trajectory calculation and massive number crunching needed in the development of atomic bombs. At that time, computers were extremely large, slow and expensive: advances in electronic technology in the post-war years led to the construction of more practical electronic computers. At that time only Konrad Zuse imagined the use of a programming language (developed eventually as Plankalkül) like those of today for solving problems.

  • Subsequent breakthroughs in electronic technology (transistors, integrated circuits, and chips) drove the development of increasingly reliable and more usable computers. The first widely used high level programming language was Fortran, developed during 1954–57 by an IBM team led by John W. Backus. It is still widely used for numerical work, with the latest international standard released in 2004. A Computer Languages History graphic shows a timeline from Fortran in 1954.

  • Dennis Ritchie and Brian Kerninghan developed the C programming language, initially for DEC PDP-11 in 1970. Later with lead of Bjorn Stroustrup programming language C++ appear starting from 1985 as the Object oriented language vertically compatible with C. Sun Microsystems developed Java in 1995 which became very popular as the initial programming language taught at universities. Microsoft presented the C# programming language, which is similar to Java, in 2001 to fight Java's popularity.

 Your IP: 38.103.63.60

 

Cybermight® LLC · 1998-2009