  The goal of the presented paper is to provide an introduction to the basic
computational models used in quantum information theory. We review various
models of quantum Turing machine, quantum circuits and quantum random access
machine (QRAM) along with their classical counterparts. We also provide an
introduction to quantum programming languages, which are developed using the
QRAM model. We review the syntax of several existing quantum programming
languages and discuss their features and limitations.
