A programming language is a interface to the control of a CPU effectively controlling a computer.
A language is a (possibly infinite) set of string all of which choose their symbols from some one alphabet.
|Type of language||Domain of application||Performance|
|Lower-level||hardware / machine||computer performance|
|Higher-level||business domains||programmer performance|
Computer languages differ not so much in what they make possible, but in what they make easy.
- In programming language, the first layer is the Operating system that abstract away the hardware details (ie file cluster vs sector for instance)
There are only two kinds of languages:
- the ones people complain about
- and the ones nobody uses.
- Text-based computer languages based on sequences of characters
When workflows are defined as code, they become more maintainable, versionable, testable, and collaborative.
The problem about all graphical programming languages is that when your project becomes complex, not only will you have spaghetti code, bit it will actually look like spaghetti too
Scripting / Dynamic Language
At Build time
Markup and Style Sheets language
A Turing tarpit (or Turing tar-pit) is any programming language or computer interface that allows for flexibility in function but is difficult to learn and use because it offers little or no support for common tasks.