UNCOL UNiversal Communication Oriented Language. In the 50's, computer scientists tried to solve the problem that for m programming languages, and n machines that you want these languages to run on, you had to build m * n compilers. Huge efforts were expended to find a universal intermediate language, UNCOL. Thus you would need only m compilers to compile the source language to UNCOL, plus n compilers to compile from UNCOL to the native machine code.

Since then, this has been a holy grail for computer science, and efforts to find the UNCOL, in one form or another have been continuing. MLRISC and C-- are two such efforts (though they don't mention the infernal acronym). The Java Virtual Machine instructions may well be a candidate, having a lot of languages implemented to compile to it already, and others argue that the x86 instruction set is a de facto UNCOL.

Parts of this writeup taken from "Compiler Design" by Wilhelm & Maurer

Further Reading
MLRISC: http://www.cs.nyu.edu/leunga/www/MLRISC/Doc/html/index.html
C--: http://www.cminusminus.org

Log in or register to write something here or to contact authors.