language interpreters/ interpreted languages weaknesses?

Mr Kelvin Lee kelvin at scientist.com
Fri Sep 10 09:15:38 EDT 1999


I posted the same question over at forum 'comp.programming'. Below is
one of the clearest replies/answers I got, the person didn't leave
his/her name but I've reposted below, cheers all.

KL.

*** START ***

I read a lot of responses to your query.  Couple of things:
1) compiled vs non-compiled does not determine whether a language is
interpreted or not.  In the context you are describing "interpreted"
refers to the action taken when a "program" is executed.  If that
program is directly executable (i.e. it is in machine language at the
time of execution) it is not "interpreted".  If it is not directly
executable (i.e. some process must translate/interpret the programs
instructions into machine language at the time of execution) then it is
"interpreted".  Excluding Assembler ANY language MAY be an interpreted
language, or not.  In simple terms any interpreted language requires
some type of "runtime" or "interpreter" on the computer in order for
the program to run. Languages which have been compiled/assembled to
machine language do not require an interpreter.  Java, BASIC and other
languages may be "compiled" and compilation does require interpretation
of the source statements (but not at runtime) but that does not make
them "interpreted" programs.  Compiled Java still requires
interpretation at runtime.  BASIC usually "compiles" to machine
language and does not require interpretation but that depends,
somewhat,on the flavor of BASIC being discussed.
2) Generally, programs which are interpreted ARE "slower".  In simple
terms every machine level instruction requires some amount of time.  If
a program is "interpreted" the time required (in machine language) to
interpret an instruction into machine language (thats the ONLY language
the computer really understands) adds to the length of time required to
perform each program "instruction" or "statement".  No way around that
no matter how you slice it.
3) The principle advantage of "interpreted" languages is, generally,
ease of programming.  Secondary advantage is portability although that
is dependent upon the availabilily of an interpreter for the particular
platform (usually a direct executable in the hardwares native machine
language).  Main disadvantage is increased utilization of system
resources (disk, memory, cpu cycles etc) and increase in length of time
for performing a given task.
4) In today's world the disadvantages are usually considered, by
programmers, to be outweighed by the advantages.  End-users seldom know
any better and ANYTHING that improves upon the manual method of doing
things tends to be, if not acceptable, tolerated.
5) "Popular" is directly related to what a given programmer is familiar
or comfortable with (or what they got suckered into spending money on
because they didn't know any better).

*** END ***

In article <7qi3q3$n1d$1 at nnrp1.deja.com>,
  Mr Kelvin Lee <kelvin at scientist.com> wrote:
> Hi,
>
> The main weakness I hear about language interpreters/ interpreted
> languages (btw.. is that the same thing?) is that they are slow(?)..
is
> this because of the way they handle (data) variables?
>
> Are there any other major weaknesses of interpreted languages over
> conventional languages such as C, C++, Ada etc.?
>
> What are the most popular interpreted languages around?
>
> Thanks,
>
> --
> Regards,
>
> KL.
>
> Sent via Deja.com http://www.deja.com/
> Share what you know. Learn what you don't.
>

--
Regards,

KL.


Sent via Deja.com http://www.deja.com/
Share what you know. Learn what you don't.




More information about the Python-list mailing list