jueves, 24 de noviembre de 2016

Technical Overview of the CLR

Undoubtedly, human always beings seek to improve, and in matters of code and programming is no exception. In this article we learn about new runtime environments and, is that if you have a super compiler but, the runtime environment is not right our compiler will not work as we hope and the effort to do the best will be in vain.

When we hear or see JVM (Java Virtual Machine) we automatically think that it is only a runtime environment for Java programs or of the Java family, but we would be surprised how many programs use JVM as a runtime engine. To mention some  LISP uses JVM for its execution.

However there is not only JVM, CLI is the direct competition of JVM, but knowing the characteristics of CLI, this has advantages. Suppose JVM and CLI face off for the title fight to best runtime enviroment, let's say CLI wins for Knock Out in the third round and takes the title, however JVM does not give up and will seek revenge.

CLI has been designed from the ground up as a target for multiple languages, and explicitly addresses many of the issues mentioned above that are needed to efficiently compile a wide variety of languages. To ensure this, from early on in the development process of the CLI, Microsoft has worked closely with a large number of language implementers.

CLI has 220 instructions, provides a number of instructions for transferring values to and from the evaluation stack. Instructions that push values on the evaluation stack are called “loads”, and instructions that pop elements from the stack into local variables are called “stores”. Punto para CLI.

A disadvantage of JVM is that it does not indicate overflow during operations on integer data types, which means that the time penalty may be significant for procedures which perform intensive arithmetic in languages that require overflow detection.

No hay comentarios:

Publicar un comentario