Computer Language

1 - About

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.

There is range of language going to lowest level, the machine language to the highest level possible where each programming language solve its own domain of application:

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.
Larry Wall

Each level is known as a generation / hierarchy and implements an abstraction layer where:

A programming language (high level) is:

See Language - Formal (Grammar|Syntax|Structure)

This section is about computer language, for Natural Language, see (Natural|Human) Language - Text (Mining|Analytics)
There are only two kinds of languages:
  • the ones people complain about
  • and the ones nobody uses.

Bjarne Stroustrup - creator of C++

2 - Visual

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

3 - Core language

is it:

  • algorithmic,
  • functional,
  • object-oriented

3.1 - Scripting / Dynamic Language

3.2 - Compiled Language

3.2.1 - At Build time

3.2.2 - At runtime

3.3 - Query Language

3.4 - Markup and Style Sheets language

3.5 - DSL

4 - Turing tarpit

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.

5 - Documentation / Reference

Data Science
Data Analysis
Data Science
Linear Algebra Mathematics

Powered by ComboStrap