A high-level programming language is a programming language that is more user-friendly, to some extent platform-independent, and abstract from low-level computer processor operations such as memory accesses. See programming language for a detailed discussion.

The word "high" does not imply that the language is superior to low-level languages but rather refers to the higher level of abstraction from machine language. For example, the difference between the programming language Java and assembler language is that Java abstracts programming functionality that assembler does not, for example, strings.