Turing complete

Turing complete is a term used in computability theory to describe abstract machines. These are usually called automata. An automaton is Turing complete if it can be used to emulate any Turing machine. It is also called computationally universal.

Most modern programming languages are Turing-complete. 

There are languages that are used to classify and describe the contents of documents. An example is HTML. HTML is not Turing complete, because it cannot actively change the state of the system. HTML can be combined with a technology such as JavaScript. Using HTML and JavaScript together can make a Turing complete system.

The standard regular expressions, which most programming languages use, are not Turing complete. This is because regular expression engines have been adapted to include back-references, and a finite automaton cannot handle back references.

A Turing complete system may run into infinite loops due to its properties.
Some examples of modern day Turing complete languages are Python, C++ and JavaScript.

Category:Theoretical computer science