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