music
OSdata.com: UML 

OSdata.com

UNCOL
Universal Computer Oriented Language

    UNCOL was first proposed in 1958 by Melvin E. Conway. UNCOL stands for Universal Computer Oriented Language. The original intent was a universal intermediate language. The source code for all programming languages would be translated into the intermediate code and the intermediate code would then be translated into the machine code for all processors. This meant only one compiler back end per processor and only one compiler front end per programming language.

    UNCOL was never successfully implemented, despite the fact that some of the most famous people in the history of computers have worked on the problem.

Google


OSdata.com is used in more than 300 colleges and universities around the world

Find out how to get similar high web traffic and search engine placement.

general

    history: UNCOL (Universal Computer Oriented Language) was proposed in 1958.

    UNCOL was first proposed in 1958 by Melvin E. Conway. UNCOL stands for Universal Computer Oriented Language. The original intent was a universal intermediate language. The source code for all programming languages would be translated into the intermediate code and the intermediate code would then be translated into the machine code for all processors. This meant only one compiler back end per processor and only one compiler front end per programming language.

    UNCOL was never successfully implemented, despite the fact that some of the most famous people in the history of computers have worked on the problem.

    The good news is that although nobody succeeded at building UNCOL, they generally did create useful things, in some cases some of the most important contributions to software engineering. This is a field where failure at the mkain gol can result in great advances.

    The most famous example would be Niklaus Emil Wirth’s invention of P-cocde and Pascal. For a while Pascal was the second most used programming language in the world (after C) and both Pascal and P-code have been highly influential even to this day.

proven possible

    The appendix to Alan Turing’s famous 1936 paper “On Computable Numbers, With an Application to the Entscheidungsproblem” proved that Turing Machines were mathematically equivalent to Church’s Lamba Calculus bu showing that Turing’s computability and Church’s effective calculability were transformations of each other. Turing followed up with a more rigorous proof in his 1937 paper “Computability and λ-Definability”. Steven Cole Kleene proved the equivalence of lambda calculus and Kurt Gödel’s 1934 recursive functions.

    The mathematical methods for describing effective calculability are Turing machines, recursive functions, and λ-definable functions. Any of these methods can be transformed into any other.

    All three methods describe every possible software program.

    Lambda calculus is the basis for procedural and functional programming languages.

    Anything that can be expressed in any conceivable programming language can be expressed in Turing machines, recursive functions, and λ-definable functions.

    Anything that can be expressed in any Turing complete programming language can be expressed in any other Turing complete programming language. And any Turing complete language can express anything that can be expressed in any programming language that is not Turing complete.

    The expressions may be exceedingly clumsy, such as trying to do complex math in COBOL or general expressions in BASIC.

    Therefore, an UNCOL is mathematically possible, if for no other reason than any arbitrarily chosen programming language could be used as an UNCOL.

    Many modern programming languages have compilers that produce C source code, effectively making the C programming language a partial UNCOL.

still useful concept

    It is my personal claim that an UNCOL would still be extremely useful, worth at least 10 trillion American dollars.

a different approach

    I would suggest that most (not all) past efforts have gone off the tracks by trying to create a programming language that humans can and will use to write software.

    I claim that there is no need for any human to directly write in UNCOL. The language only needs to be written and read by software (compilers and assemblers).

    Nonetheless, I think it would be useful for the UNCOL to be designed so that it is easy for humans to read.

    UNCOL can be very verbose specifically for the purpose of making it easy for human programmers to read and understand, even though verbose programming languages are typically rejected by programmers (who prefer the least amount of typing).

    If there is no intent for any human programmers to directly write in UNCOL, we become free to be as verbose as is necesary to make it clear to any reader how a program works.

Milo. If you have any extra copies of docs, manuals, or other materials that can assist in accuracy and completeness, please send them to Milo, PO Box 1361, Tustin, CA, USA, 92781.

    Click here for our privacy policy.


previous page next page
previous page next page

home page

one level up

special topics

peer level


Made with Macintosh

    This web site handcrafted on Macintosh computers using Tom Bender’s Tex-Edit Plus and served using FreeBSD .

Viewable With Any Browser


    Names and logos of various OSs are trademarks of their respective owners.

    Copyright © 2011 Milo

    Last Updated: September 18, 2011

    Created: May 31, 2011

previous page next page
previous page next page