[HN Gopher] Hello Many Worlds in Seven Quantum Languages (2021)
       ___________________________________________________________________
        
       Hello Many Worlds in Seven Quantum Languages (2021)
        
       Author : donutloop
       Score  : 49 points
       Date   : 2022-02-15 06:43 UTC (1 days ago)
        
 (HTM) web link (ionq.com)
 (TXT) w3m dump (ionq.com)
        
       | 2fast4you wrote:
       | Is there a good resource for learning about programming for
       | quantum computers? I'm looking at this and realizing just how
       | much I don't know.
        
         | quaintquant wrote:
         | I think this talk is an excellent 'foot in the door' intro.
         | 
         | Should provide a solid foundation, and plenty of insider jargon
         | to follow up on!
         | 
         | https://www.youtube.com/watch?v=F_Riqjdh2oM
        
         | rpmuller wrote:
         | The "Mike and Ike" book is the standard introduction to the
         | field:
         | https://en.wikipedia.org/wiki/Quantum_Computation_and_Quantu...
        
         | da-bacon wrote:
         | IBM has a nice online resource for learning quantum computing
         | using their framework (Qiskit)
         | https://qiskit.org/textbook/preface.html
        
       | fouc wrote:
       | > But today, as quantum computers with dozens of qubits are being
       | built, and systems with hundreds or even thousands of qubits are
       | on the horizon, the complexity of programming a quantum computer
       | requires a more structured approach. This has led to the birth of
       | a large number of quantum programming frameworks and languages,
       | ranging from fully-fledged programming languages like Microsoft's
       | Q#, to Python frameworks like IBM's Qiskit, to basic assembly
       | languages like QASM.
       | 
       | I'm guessing this is QASM https://www.quantum-
       | inspire.com/kbase/cqasm/
       | 
       | Interesting graphics there. Seems like programming for quantum
       | computers is an act of building "circuits"
        
         | nilslice wrote:
         | Yes, at a low (assembly-like) level, "circuits" define how a
         | series of gate operations are applied to qubits. Various
         | abstractions make this easier, including the languages and
         | frameworks mentioned in the linked article.
         | 
         | Interesting to note is the recent formation of the Linux
         | Foundation's QIR Alliance[0], which has specified a quantum
         | intermediate representation within LLVM to bridge the quantum
         | software/hardware ecosystem.
         | 
         | [0]: https://www.linuxfoundation.org/press-release/new-quantum-
         | in...
        
         | rackjack wrote:
         | First we build circuits, then we build languages, then we build
         | everything else
        
         | wzeng wrote:
         | The cQASM that you link to is one of the flavors of QASM.
         | Another commonly used one is openqasm whose 2.0 and 3.0 specs
         | are here: https://github.com/Qiskit/openqasm
         | 
         | Along with QIR like as is listed in the comment, these are two
         | open assembly specs with collaborative governance. Another is
         | Quil: https://github.com/quil-lang/quil
         | 
         | While quantum computing has a history of using circuit diagrams
         | (which are still very useful) to represent programs. These
         | languages have representations under the hood that look a lot
         | more like assembly. For example:
         | https://github.com/Qiskit/openqasm/blob/master/examples/adde...
        
       | da-bacon wrote:
       | Oh this looks familiar! I left off my favorite
       | https://github.com/dabacon/qsel (have never used this to run
       | against a real device).
        
       | rpmuller wrote:
       | What? No Jaqal?
       | https://www.sandia.gov/quantum/Projects/QSCOUT_Jaqal.html
        
         | da-bacon wrote:
         | Write a Jaqal IonQ API interface, and I'm sure they will add it
         | (I no longer work for said company)
        
       | thatcherc wrote:
       | Interesting - 6 of the 7 languages discussed are Python
       | libraries. Must be going for the more DSL type of language. Of
       | the ones mentioned, looks like only Q# and QASM aren't Python-
       | based.
        
         | Smaug123 wrote:
         | Q# originated as a DSL in F#, which has extremely strong DSL-
         | creating capabilities in its [computation
         | expressions](https://docs.microsoft.com/en-
         | us/dotnet/fsharp/language-refe...). See
         | https://devblogs.microsoft.com/qsharp/why-do-we-need-q/ for its
         | history.
        
         | da-bacon wrote:
         | Lot's of reasons for this. Mostly having to do with the minimal
         | size and sophistication of current quantum programs, and the
         | background that many of these efforts arose from Physics teams
         | where python is heavily used. One of the most popular non-
         | Python based version of these sorts of frameworks is
         | https://yaoquantum.org/ which is in Julia.
        
           | gowld wrote:
           | > minimal size and sophistication of current quantum
           | programs,
           | 
           | For that, I'd expect a simple standalone like Verilog or ASM.
        
       | kingcharles wrote:
       | The fact that all the major cloud providers have their own PAYG
       | Quantum Computing setups, and I can sit here in my underwear and
       | write quantum code, is quite frankly mind-boggling.
       | 
       | BRB, going to put my cat in a box...
        
       ___________________________________________________________________
       (page generated 2022-02-16 23:01 UTC)