Answer :
Answer:
A good deal of restraint must be observed by the language designer when revising programming languages. The greatest danger is that the revision process of programming language will continually add new features, so that the programming language continue to grow more and more complex. Compounding the problem during language revision is the reluctance to remove obsolete features because of existing software. to remove obsolete features.
Comparing the evolution of Fortran as a case study:
Fortran has evolved since it started. The evolved version of Fortran include:
Fortran I: no data-typing statements in the Fortran I language. Variables whose names began with I, J, K, L, M, and N were implicitly integer type, and all others were implicitly floating-point.
Fortran II: fixed many of the bugs in the Fortran I compilation system and added some significant features to the language, the most important being the independent compilation of subroutines.
Fortran IV: Fortran IV was an improvement over Fortran II in many ways. Among its most important additions were explicit type declarations for variables, a logical If construct, and the capability of passing subprograms as parameters to other subprograms.
Fortran 77: Fortran 77 retained most of the features of Fortran IV and added character string handling, logical loop control statements, and an If with an optional Else clause.
Fortran 90: two simple syntactic changes that altered the appearance of both programs and the literature describing the language. First, the required fixed format of code, which required the use of specific character positions for specific parts of statements, was dropped. The second change was that the official spelling of FORTRAN became Fortran.This change was accompanied by the change in convention of using all uppercase letters for keywords and identifiers in Fortran programs. The new convention was that only the first letter of keywords and identifiers would be uppercase.
Fortran 95: continued the evolution of the language, but only a few changes were made. A new iteration construct, Forall, was added to ease the task of parallelizing Fortran programs.
Fortran 2003: added support for object-oriented programming, parameterized derived types, procedure pointers, and interoperability with the C programming language.
Fortran 2008: added support for blocks to define local scopes, co-arrays, which provide a parallel execution model, and the DO CONCURRENT construct, to specify loops without inter-dependencies.