First, second, third and fourth generation + Python and Javascript

Join the discussion
Registration is free. Ask a follow-up in this thread, or start your own.
6 replies · 2K views
Trying2Learn
Messages
375
Reaction score
57
TL;DR
How would one categorize Python and Javascript
Good Morning

I have understood, as a general rule and category (and I realize all such attempts to categorize are fraught with danger), the four generations
of languages, from as machine (first generation), to assembly (second generation), to compilable (third generation; e.g., C, FORTRAN) and finally, interpretive (fourth generation) like Matlab.

I also realize that Java, with its interpreter, is still a kind of compilable language

However, I am unable to place languages like Python or Javascript into this. Neither need to be compiled, both run on web pages, yet there does not seem to be an interpreter either.

How would one categorize these last two languages?
 
Physics news on Phys.org
I would say that there are far more than 4 categories. Your four generations is an oversimplification. And in chronology, the four you cite overlap in time.
 
Trying2Learn said:
How would one categorize these last two languages?
One generally wouldn't.

But, "3" (but, not your "3")
 
Last edited:
Generally: Python runs on the server, the source code is compiled to bytecode, then the bytecode runs on an interpreter; JavaScript runs on the client, typically in a broswer within which the interpreter for it is integrated.
 
Thank you everyone. I will have to re-evaluate these categories.
 
  • Like
Likes   Reactions: sysprog
Trying2Learn said:
Thank you everyone. I will have to re-evaluate these categories.
Why ? Wikipedia doesn't do too bad a job of it.
 
  • Like
Likes   Reactions: Trying2Learn, FactChecker and sysprog
4'th generation is not characterized by being interpretive. It is characterized by being specialized for particular applications and problem domains. It is very hard for a general-purpose language to be as convenient to use as a language that is designed specifically for a particular application. There are a lot of specialized languages for mathematics, statistics and data analysis, simulation, database use, etc. They may not be as well known outside of their specialty because of their limited application, but they can dominate their subject domain.
I would consider Python to be a nice 3'rd generation language.
 
Last edited:
  • Like
Likes   Reactions: Trying2Learn