On Wed, 5 Mar 2014 18:20:43 +0100 Alexander Rødseth <rods...@gmail.com> wrote:
> If you don't think the definition of a compiled language is that it > can be compiled down to native code, I would love to hear your > definition. Well, then any language would be a compiled language. The problem here is, that the language interpreter does certain things for certain expressions, thus compiling an interpreted language only involves knowing what the interpreter does and putting it into direct system calls. However, most interpreted languages haven't been designed to be compiled. Thus, the syntax may be very simple, but what is interpreted in the end tends to be very complex (take Java and Python as good examples for that). > Some even think that Java can be counted as a "compiled language", > even though it only compiles down to bytecode (until JIT-ed). Regular > Python also compiles down to byte code (.pyc/.pyo), so if you should > happen to think Java is a compiled language, surely you must think > that Python is a compiled language too. Java definitely is an interpreted language, because the computer needs a translator to understand what the hell is going on. If you compile Java, the resulting machine-code may run as expected, but is far from a cleanly written C-program because of the overhead and because of the fact Java hasn't been designed to be compiled, but interpreted. > C programs can also be run as scripts, but it doesn't make C a > scripting language. Where did you pick that up? > I think the compiled/scripting distinction is pretty meaningless. It's > more interesting to consider which languages are faster and if low > level code can be called or not (can you call C functions, could you > write an operating system?). Arguably, expressiveness and developer > productivity (however measured) might be even more important. I agree on that point. Let's not get hung up at the definitions, but return to a constructive discussion. Cheers FRIGN -- FRIGN <d...@frign.de>