Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Which programming languages aren't considered high-level? [closed]

Tags:

In informatics theory I hear and read about high-level and low-level languages all time.

Yet I don't understand why this is still relevant as there aren't any (relevant) low-level languages except assembler in use today.

So you get:

Low-level

  • Assembler

Definitely not low-level

  • C
  • BASIC
  • FORTRAN
  • COBOL
  • ...

High-level

  • C++
  • Ruby
  • Python
  • PHP
  • ...

And if assembler is low-level, how could you put for example C into the same list. I mean: C is extremely high-level compared to assembler. Same even for COBOL, Fortran, etc.

  • So why does everybody keep mentioning high and low-level languages if assembler is really the only low-level language?
like image 235
hilo Avatar asked Apr 12 '10 19:04

hilo


People also ask

What language is not a high-level language?

Two examples of low-level languages are assembly and machine code. A low-level programming language is a programming language that provides little or no abstraction from a computer's instruction set architecture—commands or functions in the language map closely to processor instructions.

Is C++ considered high-level?

C and C++ are now considered low-level languages because they have no automatic memory management.

Is Python not a high-level language?

Python is an interpreted, object-oriented, high-level programming language with dynamic semantics.

Is C considered a high-level language?

Examples of high level languages are C, C++, Java, Python, etc. 1. It is programmer friendly language.


2 Answers

You will find that

many of the truths we cling to depend upon our own point of view.

For a C programmer, Assembler is a low-level language. For a Java programmer, C is a low-level language and so on.

I suspect the folks programming the first stored-program computer with 1s and 0s would have thought Assembler a high-level language. It's all relative.

(Quote from Return of the Jedi)

like image 98
brabster Avatar answered Oct 19 '22 02:10

brabster


According to Wikipedia, the low level languages are machine code and assembly.

From the source:

In computer science, a low-level programming language is a programming language that provides little or no abstraction from a computer's instruction set architecture. The word "low" refers to the small or nonexistent amount of abstraction between the language and machine language; because of this, low-level languages are sometimes described as being "close to the hardware."

Then, to answer:

So why does everybody keep mentioning high and low-level languages if assembler is really the only low-level language.

I don't know who "everyone" is, but I would venture a guess that back when high-level languages were not as commonplace as they are today, it was more relevant to talk about low-level vs. high-level (because there was a relatively significant amount of programmers writing assembly code). In modern times it is a less important distinction. Personally, I rarely hear people using these terms except to differentiate between assembly or not (except for those times when you might hear someone raised on Python referring to C or C++ as low-level, but this is not in the spirit of the original definition).

like image 45
danben Avatar answered Oct 19 '22 03:10

danben