When it comes to programming languages, the first name that comes to mind typically is C. Dating back to the ’70s when it was developed at AT&T Bell Laboratories by Dennis Ritchie and Ken Thompson, it was easy to learn by those who wanted to work on computer coding. Most existing computer programs were written in assembly language, communicating directly with hardware but being complex, long, and hard to debug. C offered ease and intuitiveness of use and brought in a totally new audience to computer programming.
Quantum computing represents the next stage in the development from classical computing. The latter encodes information as a series of 0s and 1s, while a qubit (from quantum computers) could be a 0, 1, or both at a time. Quantum computers use entangled quantum states with overlapping information bits to perform their calculations. This could make them much, much faster than classical computing at doing calculations and data-crunching, which is why they also looked at as the future of computing and as the source of programming languages for AI.
Working with the full potential of quantum computing requires two things:
- The most current technology
- A quantum programming language to describe quantum algorithms
Essentially, while the algorithm explains how to solve a problem, the programming language helps the computer to perform the necessary calculations by describing the algorithm.
Present approaches to quantum computation look to adapt and use existing tools and technologies, as this would allow them to be run on devices that will be available over the next few years. Current quantum languages are somewhat similar to assembly languages in their expressiveness, as the programmer must provide every operation the computer is to perform.