Technical overview of the common language runtime



Hi, I will give my opinion about the article titled “Technical Overview of the Common Language Runtime" by Erik Meijer and Jim Miller.

CLI VS JVM

CLI is a platform-independent development system from Microsoft that enables programs written in different programming languages to run on different types of hardware. The CLI includes the Common Type System (CTS) and Common Language Specification (CLS). No matter which programming language they are written in, CLI applications are compiled into Intermediate Language (IL), which is further compiled into the target machine language by the Common Language Runtime (CLR) software.

JVM is an environment that executes Java programs. The cycle consists that Java programs are compiled into an intermediate language called byte code, then any program compiled into byte code can be executed on any platform that has a JVM installed on it. Have you already notice the power of this? well, if you do not notice, this makes Java software compatible with many different computing platforms, so it is a very powerful feature!

As you can see, these 2 technologies have very cool features, but if you read carefully the sentences that I put in bold, then you are going to notice the key difference of CLI: many programming languages. Let me explain this clear difference having in mind the information that I read in the article, first, JVM does not provide encoding type-unsafe this is: pointers and unsafe type conversions, also in the JVM all storage locations are 4 bytes wide, in the CLI are polymorphic, this means that the wide could be 4 bytes or hundreds of bytes, CLI has many features that are things that JVM does not have, I must say that it is a clear competitor and a clear solution to the JVM problems, because, as I said before, JVM doesn't provide features according to the reading that gives a solution to encode type-unsafe features like pointers, tagged pointers, unsafe type conversions, function pointers, lexical closures, and more, I must say that CLI it is a complete solution for these kinds of problems.





Comentarios

Entradas populares