What is factors which affect the implementation of programming language?

Compiler DesignProgramming LanguagesComputer Programming

Some factors affect the implementation of programming languages which are as follows −

  • Scope − The scope of a declaration is that portion of a program where that declaration is applied. The implementation mechanism may be different for different languages. Scope rules for each language determine how to go from the declaration of the name. The usage of a name in a procedure is local if it is within the scope of a declaration within that procedure otherwise the usage is non-local. According to the scope of variables in a particular language, storage management is implemented.

  • Lifetime of variable− The lifetime of a variable may be an entire program, particular block, or function, and storage may be allocated for values, so storage management will be static dynamic storage, and global storage respectively.

  • Binding of Names− Each use of a variable name must be associated with a declaration. This is generally done via a symbol table. In most compiled languages, it happens at compile time.

    • Even if a name is only declared in a program, it can denote different objects at runtime. It can use the term environment to describe the mapping of a name to a storage location and the term state to describe the mapping of a storage location to the value held within it.

    • There is a distinction between the meaning of identifiers on the left and right sides of an assignment statement. For example, in the statement, i = i + 1; the identifier on the left-side refers to the location of i in storage while the l-value and r-value distinguish between these meanings. The l-value (left value) of an identifier refers to the location of a variable that we use on the left side of an assignment while the r-value (right value) of an identifier refers to the current value of a variable that we use on the right side of an assignment.

  • Readability− An important criterion for judging a programming language is the ease with which the programs can be read and understood. Therefore, a good programming language must consider readability in the context of the problem domain.

  • Writability− Writability is a measure of how easily a language can be used to create a program for the chosen problem domain. Most of the language characteristics that affect readability also affect writability.

  • Portability− A language is portable if its programs can be compiled and run on different machines without the source code have to be re-written. This concept of portability or transportability is one of the most important criteria for many programming projects. Ada, FORTRAN, C, and Pascal all have standardized definitions allowing for portable applications to be implemented.

Published on 08-Nov-2021 10:52:55