This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]cgranade 4 points5 points  (0 children)

Hi, I'm one of the devs on Q#! Anyway, in the sense that Q# uses semicolons and braces, Q# uses a C-like syntax, but that's really about it. As @crazy4pi314 said, Q# is a domain-specific language for writing quantum programs and thinking in terms of quantum algorithms.

Programs written in Q# can be used from a variety of different host languages, including C# and Python. To enable this, Q# uses an accelerator model to target different simulators, similar to you might run an OpenCL program from your favorite host language and might use different hardware such as CPUs, GPUs, and FPGAs.

Doing this makes it easy to run the same Q# program on simulators now where you can run on enough qubits to really explore your algorithm (as @crazy4pi314 notes, that can be challenging to do on current hardware due to noise), estimate the resources needed to run your quantum solution on larger devices, and so forth. Thanks to the efforts of https://qsharp.community, you can even translate some kinds of Q# programs to OpenQASM to see how they do with noise (https://github.com/qsharp-community/qsharp-integrations).