FACTOID # 68: Canada lays claim to more water than any other nation.
 
 Home   Encyclopedia   Statistics   Countries A-Z   Flags   Maps   Education   Forum   FAQ   About 
 
WHAT'S NEW
RECENT ARTICLES
More Recent Articles »
 

FACTS & STATISTICS    Simple view

  1. Select countries to view: (hold down Control key and click to select several)

     

     

    Compare:

     

     

  1. Select fact or statistic: (* = graphable)

     

     

     

  2. (OPTIONAL) Compare to statistic: (both need to be graphable)

     

     

     

  3. View result as:

     

       
(OR) SEARCH ALL encyclopedia, stats & forums:   

Encyclopedia > Von Neumann programming languages

The term von Neumann language refers to those programming languages that are high-level abstract isomorphisms of von Neumann architectures. As of 2004, most current programming languages fit into this description, likely as a consequence of the extensive domination of the von Neumann computer architecture during the past 50 years. A programming language or computer language is a standardized communication technique for expressing instructions to a computer. ... In mathematics, an isomorphism (in Greek isos = equal and morphe = shape) is a kind of mapping between objects, devised by Eilhard Mitscherlich. ... The term von Neumann architecture refers to a computer design model that uses a single storage structure to hold both programs and data. ...


The differences between FORTRAN, C, and even Java, although considerable, are ultimately constrained by the fact that all three are based on the programming style of the von Neumann computer (if, for example, Java objects were all executed in parallel with asynchronous message passing and attribute-based declarative addressing, then Java would not be in the group). Fortran (also FORTRAN) is a statically typed, compiled, programming language originally developed in the 1950s and still heavily used for scientific computing and numerical computation half a century later. ... The C Programming Language, Brian Kernighan and Dennis Ritchie, the original edition that served for many years as an informal specification of the language The C programming language is a standardized imperative computer programming language developed in the early 1970s by Ken Thompson and Dennis Ritchie for use on the... Java is a reflective, object-oriented programming language developed initially by James Gosling and colleagues at Sun Microsystems. ...


The isomorphism between Von Neumann programming languages and architectures is in the following manner:

  • program variables → computer storage cells
  • control statements → computer test-and-jump instructions
  • assignment statements → fetching, storing instructions
  • expressions → memory reference and arithmetic instructions

Using a metaphor from Backus, assignment statements in von Neumann languages split programming into two worlds: the right side and left side of assignment statements. The right side consists of expressions, an orderly mathematical space with potentially useful algebraic properties: most computation takes place here. The left side consists of statements, a disorderly mathematical space with few useful mathematical properties (Structured programming can be seen as a limited heuristic that does apply in this space, though). John Backus (born December 3, 1924) is an American computer scientist, notable as the inventor of the first high-level programming language (FORTRAN), the Backus-Naur form (BNF, the almost universally used notation to define formal language syntax), and the concept of Function-level programming. ... Structured programming can be seen as a subset or subdiscipline of procedural programming, one of the major programming paradigms. ... Heuristic is the art and science of discovery and invention. ...


Backus claimed that there exists now in computer science a vicious cycle where the long standing emphasis on von Neumann languages has continued the primacy of the von Neumann computer architecture... and our dependency on it has made non-von Neumann languages uneconomical and thus limited their further development: the lack of widely available and effective non-von Neumann languages has deprived computer designers of the motivation and the intellectual foundation necessary to develop new computer architectures. Wikibooks Wikiversity has more about this subject: School of Computer Science Open Directory Project: Computer Science Downloadable Science and Computer Science books Collection of Computer Science Bibliographies Belief that title science in computer science is inappropriate nacho Categories: Computer science ... In many parts of economics there is an assumption that a complex system of determinants will tend to lead to a state of equilibrium. ...


Some examples of non-von Neumann languages are: APL, FP, FL, J, NGL, ZPL, and Mercury. APL (for A Programming Language, or sometimes Array Processing Language) is an array programming language based on a notation invented in the 1950s by Kenneth E. Iverson while at Harvard University. ... FP (short for Function Programming) is a programming language created by John Backus to support the Function-level programming paradigm. ... The J programming language, developed in the early 90s by Ken Iverson and Roger Hui, is a synthesis of APL (also by Iverson) and the FP and FL functional programming languages created by John Backus (of FORTRAN, ALGOL, and BNF fame). ... ZPL (short for Z-level Programming Language) is an array programming language designed to replace C and C++ programming languages in engineering and scientific applications. ... Mercury is a functional/logical programming language based on Prolog, but more useful for real-world programming. ...


  Results from FactBites:
 
The von Neumann Architecture of Computer Systems (2303 words)
Von Neumann begins his "Preliminary Discussion" with a broad description of the general-purpose computing machine containing four main "organs." These are identified as relating to arithmetic, memory, control, and connection with the human operator.
To von Neumann, the key to building a general purpose device was in its ability to store not only its data and the intermediate results of computation, but also to store the instructions, or orders, that brought about the computation.
Most of the resulting program, therefore, is generated to provide for the mapping of multidimensional data onto the one dimensioned memory and to contend with the placement of all of the data into the same memory.
  More results at FactBites »


 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your comments
Please enter the 5-letter protection code

Want to know more?
Search encyclopedia, statistics and forums:

 


Lesson Plans | Student Area | Student FAQ | Reviews | Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms.