Turing-Complete

A system that in principle could be able to solve any computation problem.

In order to be called Turing complete, a system has to be able to do what a Turing machine — a theoretical machine developed by mathematician Alan Turing — can do.

Most computer programming languages in use today are Turing complete, but it is not necessary for blockchains to fit this requirement.

For example, Solidity, the programming language used to write Ethereum smart contracts, is Turing complete. Conversely, when a language is not Turing complete, it has some restrictions that prevent it from solving all kinds of computational problems.
Bitcoin is not Turing complete by design. That’s because it was designed as a cryptocurrency and just allows simple functionalities such as transferring values.

An important feature of a Turing-complete language is loops, which allow the programming language to do a set of instructions over and over again.

Bitcoin’s scripting language is not equipped with this. The reason this blockchain is not Turing complete is to prevent spams and network overload.

Related Articles

Discussion about this glossary

Recommended Stories

ADVERTISEMENT

The most important crypto and finance news and events of the day

Be the first to know latest important news & events directly to your inbox.

By signing up, I agree to our TOS and Privacy Policy.

Welcome Back!

Login to your account below

Create New Account!

Fill the forms below to register

Retrieve your password

Please enter your username or email address to reset your password.