Avatar of milani_lucie
milani_lucieFlag for United States of America

asked on 

Compiler & Interpreter - .NET Framework

Hi,

I know that when you use "csc" or "vbc", the compiler will generate MSIL. Now JIT will translate that MSIL into 1's and 0's. Now my question is : So we have two compilations ? Please explain me little bit.

Thanks
.NET ProgrammingC#Visual Basic.NET

Avatar of undefined
Last Comment
Nasir Razzaq
Avatar of Nasir Razzaq
Nasir Razzaq
Flag of United Kingdom of Great Britain and Northern Ireland image

> So we have two compilations ?

One compilation and one interpretation

http://msdn.microsoft.com/en-us/library/ht8ecch6(v=vs.71).aspx
Avatar of Éric Moreau
Éric Moreau
Flag of Canada image

MSIL is an intermediate compilation which is platform independent.

the JIT takes the MSIL and finishes the compilation specially for the platform on which it is running
Avatar of kaufmed
kaufmed
Flag of United States of America image

@CodeCruiser

Which one are you considering to be "interpretation?"
Avatar of milani_lucie
milani_lucie
Flag of United States of America image

ASKER

CodeCruiser,

One is CSC or VBC compilation, JIT is also compilation. Can you please specify:

One compilation and one interpretation

Thanks
ASKER CERTIFIED SOLUTION
Avatar of Éric Moreau
Éric Moreau
Flag of Canada image

Blurred text
THIS SOLUTION IS ONLY AVAILABLE TO MEMBERS.
View this solution by signing up for a free trial.
Members can start a 7-Day free trial and enjoy unlimited access to the platform.
See Pricing Options
Start Free Trial
Avatar of milani_lucie
milani_lucie
Flag of United States of America image

ASKER

kaufmed,

Do we agree with @emoreau ? I think so too. That is the difference between Java and .NET. Am i correct ?

Thanks
SOLUTION
Avatar of kaufmed
kaufmed
Flag of United States of America image

Blurred text
THIS SOLUTION IS ONLY AVAILABLE TO MEMBERS.
View this solution by signing up for a free trial.
Members can start a 7-Day free trial and enjoy unlimited access to the platform.
Avatar of Nasir Razzaq
Nasir Razzaq
Flag of United Kingdom of Great Britain and Northern Ireland image

I was considering JITing as interpretation because it does not convert the whole code to machine code. It converts code as and when needed.
Avatar of kaufmed
kaufmed
Flag of United States of America image

@CodeCruiser

But it's not interpreting; it's compiling! It's just doing it on demand  = )
Avatar of Nasir Razzaq
Nasir Razzaq
Flag of United Kingdom of Great Britain and Northern Ireland image

@kaufmed
Yes you are right :-)

I was considering CLR as an interpreter given that it converts and executes code as needed but technically speaking its not an interpreter.
.NET Programming
.NET Programming

The .NET Framework is not specific to any one programming language; rather, it includes a library of functions that allows developers to rapidly build applications. Several supported languages include C#, VB.NET, C++ or ASP.NET.

137K
Questions
--
Followers
--
Top Experts
Get a personalized solution from industry experts
Ask the experts
Read over 600 more reviews

TRUSTED BY

IBM logoIntel logoMicrosoft logoUbisoft logoSAP logo
Qualcomm logoCitrix Systems logoWorkday logoErnst & Young logo
High performer badgeUsers love us badge
LinkedIn logoFacebook logoX logoInstagram logoTikTok logoYouTube logo