by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :)by MathLes and ClintCode AYYILDIZ TEAM :) Computer Engineering Tips - Computer Engineering news and articles - Programming Language Theory Computer Engineering Tips - Computer Engineering news and articles - Programming Language Theory
  Home arrow Programming Languages arrow Fundamentals arrow Programming Language Theory
Computer Engineering Tips - Computer Engineering news and articles | _DATE_FORMAT_LC
 
 
Main Menu
Home
News
Algorithms
Artificial Intelligence
Bioinformatics
Computer Graphics
Computer Networks
Computer Organization
Computer Security
Data Mining
Data Structures
Database Systems
Distributed Computing
Internet
Operating Systems
Parallel Computing
Programming Languages
Publications
Robotics
Software Engineering
Other Articles


Partners

All Partners

 
 
 
Programming Language Theory _CMN_EMAIL
_USER_RATING: / 0
_VOTE_POOR_VOTE_BEST 

In this article:

  • What is Programming language theory
  • History of Programming language theory
  • Fields of study in programming language theory

What is Programming language theory

Programming language theory or PLT is a field of study in computer science which involves the design, implementation, analysis, characterization and classification of programming languages and the features of programming languages. Being a multi-disciplinary field, it is dependent on the fields of mathematics, software engineering as well as linguistics and cognitive science. It is sometimes represented by the lowercase of Greek letter lambda.

History of Programming language theory

There have been certain major developments in various fields that have had a direct effect on programming language theory. These are as follows:

  • The development of Chomsky hierarchy by Noam Chomsky in the 1950s under linguistics was a discovery that had a big impact on the field of programming language theory.
  • Simula, the first object-oriented language, developed by Ole-Johan Dahl and Kristen Nygaard in the 1960s introduced the important concept of co-routines.
  • Smalltalk, the object oriented programming language developed at Xerox PARC under the leadership of Alan Kay was known for it innovative nature and development environment.
  • The development of the process calculi was another important factor that affected the field of computer science especially programming language theory.
  • Monads were first used as a method to structure programs that were written in functional programming languages by Philip Wadler in the 1990s which was a significant development in this field.

Fields of study under Programming language theory

Programming language theory engulfs several fields or areas of study. These may be a part of the theory itself or may have an important effect on the theory. These are explained below:

  • Compiler theory
  • Compiler theory is a theory that deals with writing compilers or translators for programming languages. Compilers are software programs that perform the important function of converting the program written in one language to a program of another programming language. A compiler performs certain key functions. The first of them is syntax analysis where the compiler determines if the program code is written correctly in accordance with the syntax of the language it is in. This involves scanning and parsing. The next function is of semantic analysis where the compiler tries to determine what the program is supposed to do or achieve. The compiler also performs optimization of the program which improves the performance of the program (usually in the terms of speed of execution). Finally, the compiler generates the code which results in an output of the program in the desired language (example, machine code).

  • Formal Semantics
  • The field of formal semantics aims at laying down a standard or specification based on which a computer program would behave. It also lays down standards for programming languages and their behavior.

  • Program Transformation
  • The process of converting a particular program from one form (that is, language) to another one is called program transformation.

  • Program Analysis
  • Program analysis tries to examine a computer program for problems, if any, and also determines the key characteristics of the computer program.

  • Runtime systems
  • The development of runtime environments for a programming language is called a runtime system. It also involves the development of the components required for the functioning of such environments such as virtual machines, garbage collection.

  • Comparative programming language analysis
  • Comparative programming language analysis involves the classification of programming languages as belonging to a certain type based on the characteristics they bear. Programming languages maybe divided under broad categories which are called programming paradigms (such as modular programming, procedural programming etc.)

  • Metaprogramming
  • The process through which higher-order programs are generated which help produce other programs that are usually in a different language when they are executed is called metaprogramming.

  • Domain-specific languages
  • Domain-specific languages are developed with a purpose to solve certain specific problems in a more efficient and fast manner.

 
 Sponsored Links

_USER_RATING: / 0
_VOTE_POOR_VOTE_BEST 
 
       
         
     
 
Advertisement
 
   

Copyright 2005 - 2006 Science Tips Team. All rights reserved.

Nanotechnology Development Blog