Question:
programming basic---linker,compiler,and interpreter.?
anonymous
2011-11-27 18:41:54 UTC
is my description right?
----------------------
interpreted language--->java,an intermediate language. that's the way interpreter works.
compiler--->compile the source code into machine readable language
link--->convert the compiler's file into machine code
----------------------
thx for the answers.
Three answers:
samofcalifornia
2011-11-27 21:12:51 UTC
The first thing you must understand is that there is not a standard definition of those terms. The next thing you need to understand is that many people, especially marketing people, tend to use words differently to intentionallly confuse us into thinking that their relatively common technology is uncommon.



Typically, a compiler creates object files with machine language in each of them. Typically there is one object file created by a compiler for each input file. The linker merges the object files into an executable file. This basic technology has existed for more than half a century.



The definition of a translator and/or interpreter is not so clear. One definition is that a translator converts source code to an inerrnal code and an interpreter executes the translated code, or a translator does both; a translator might recognize the original source code and also execute it. Those definitions however are not always used for the terms.



So in my opinion, when Java and C# converts source code to an intermediate language, that should be compiling or maybe translating. But what they do during execution I think is not compiling; when C# is executed, a "just-in-time compiler" is used. I am not sure of the corresponding terminology for Java. In my opinion, the "just-in-time compiler" is not a compiler.
klapperichchris
2011-11-27 18:48:16 UTC
Basically correct, yes. Your description of the linker is rather unclear though - I'm unsure what you meant. A linker takes precompiled libraries and functions and compiled bits of code made by the compiler, called Objects, and connects it all together into an executable that will run.



An important point to note is that an interpreted language is different than a compiled one because it's not compiled and run by the computer but instead executed by an interpreter program on the computer. The downside is it runs slower, the upshot is that your code is super-portable.
Jean
2016-02-27 03:25:53 UTC
doubtful its mostly used in creating macros in excel, employers are looking more at languages like C# as it's structure is strict, in other words every statement must end in a semicolon or the app wont run, whereas visual basic you can omit it and the app would still run. Also it depends what kind of programming you're going into, for games and OS's C++ and python are more likely to help you out. Java is great for web and mobile applications, as it is cross device compatible that is as long as you can get the runtime on the device the app will work. As such it's used in phones, i-(pads, pods, phones), etc.


This content was originally posted on Y! Answers, a Q&A website that shut down in 2021.
Loading...