DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Please enter at least three characters to search
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Zones

Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks

Because the DevOps movement has redefined engineering responsibilities, SREs now have to become stewards of observability strategy.

Apache Cassandra combines the benefits of major NoSQL databases to support data management needs not covered by traditional RDBMS vendors.

The software you build is only as secure as the code that powers it. Learn how malicious code creeps into your software supply chain.

Generative AI has transformed nearly every industry. How can you leverage GenAI to improve your productivity and efficiency?

Related

  • The Rise of Shadow AI: When Innovation Outpaces Governance
  • React’s Unstoppable Rise: Why It’s Here to Stay
  • Process Mining Key Elements
  • Lead a Successful Agile Transformation With the VICTORY Framework

Trending

  • Next Evolution in Integration: Architecting With Intent Using Model Context Protocol
  • Traditional Testing and RAGAS: A Hybrid Strategy for Evaluating AI Chatbots
  • Navigating and Modernizing Legacy Codebases: A Developer's Guide to AI-Assisted Code Understanding
  • Tired of Spring Overhead? Try Dropwizard for Your Next Java Microservice

Turing Machine: Prototype of Programming Language by Alan Turing, the Father of IT Era

Alan Turing, the Father of computer science, invented the Turing machine in 1936. Read this post for more about the Turing machine, explained with examples.

By 
Dmitry Egorov user avatar
Dmitry Egorov
DZone Core CORE ·
Nov. 01, 21 · Analysis
Likes (8)
Comment
Save
Tweet
Share
15.4K Views

Join the DZone community and get the full member experience.

Join For Free

Programming Language Roots

Nowadays programming languages are recognized as something ordinary, which does not come as a surprise. But in general, this technology is relatively young and appeared about 50 years ago. The first abstract idea of a programming language was introduced in mathematics. There are many related notions, such as a state machine, computer algorithm, and combinational logic, that have been introduced in mathematics and after defining the notion of the Turing machine.

Founder of IT Era: Alan Turing

Alan Turing, the Father of computer science, invented the Turing machine in 1936. Alan Turing is a legendary person who anticipated the IT era and became its founder. He is also known as a person who cracked the Enigma code and brought significant value to the second World War victory. His prediction that programming languages will be a part of normal life before the year 2000 was unthinkable during the years of his life.

Alan Turing photograph with quote

Father of All Programming Languages: Turing Machine

The Turing machine is a mathematical abstraction that allows one to "write" first programs. You can create your "application" by having just a list of papers. Before we move forward, let's introduce core notions of the Turing machine:

Core notions of Turing machine

Looks pretty confusing. From the first look, it's hard to find similarities with programming languages. So your first reaction might be like: 

Where Coding with gorillas

Writing First “Hello World” Turing Machine

Well, coding is not as far as it looks. Let's write our first "program" using the Turing machine model. Our "hello world" program will just inverse binary numbers.  

Inverse binary numbers

Explaining Table of Instructions

0 and 1 at the left side corresponding to potential values on tape. Q1 and Q2 are statuses meaning current machine status. At the intersection of both of them we can find instructions to be executed by the machine; for example, write 1, move right, change state to Q2.  

Executing Written Turing Machine

Now let's see how our Turing machine is working for input "001101". I used the application "turing machine" from this website.

Turing machine with input 001101

More Complex Turing Machines

An example of a Turing machine that just inverted binary numbers looks too obvious and is still far from real development. Let's see a more complex scenario: an example with the machine that removes all "a" characters from a string:

Turing machine example removing all "a" characters from a string

Conclusion

In this article, I've introduced the main idea of the Turing Machine and shown some examples. The Turing Machine is a much more complex model than covered here. I did not include some important notions like Turing completeness, but here you can find more details about it.

In Memory of Alan Turing

Those seeds planted by Alan Turing gave our civilization unthinkable technologies. IT technologies have changed all domains: medicine, space, finance, physics, chemistry, etc. The height of the injustice is that the person who gave rise to these miracles was driven to suicide. The past cannot be returned, but each of us can honor Alan Turing with his memory.

If I have seen further it is by standing on the shoulders of Giants.

Alan Turing memorial plaque

Turing machine IT Prototype

Opinions expressed by DZone contributors are their own.

Related

  • The Rise of Shadow AI: When Innovation Outpaces Governance
  • React’s Unstoppable Rise: Why It’s Here to Stay
  • Process Mining Key Elements
  • Lead a Successful Agile Transformation With the VICTORY Framework

Partner Resources

×

Comments
Oops! Something Went Wrong

The likes didn't load as expected. Please refresh the page and try again.

ABOUT US

  • About DZone
  • Support and feedback
  • Community research
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 100
  • Nashville, TN 37211
  • support@dzone.com

Let's be friends:

Likes
There are no likes...yet! 👀
Be the first to like this post!
It looks like you're not logged in.
Sign in to see who liked this post!