  Encoding quantum information into a set of harmonic oscillators is considered
a hardware efficient approach to mitigate noise for reliable quantum
information processing. Various codes have been proposed to encode a qubit into
an oscillator -- including cat codes, binomial codes and
Gottesman-Kitaev-Preskill (GKP) codes -- and are among the first to reach a
break-even point for quantum error correction. Though GKP codes are widely
recognized for their promise in quantum computation, they also facilitate
near-optimal quantum communication rates in bosonic channels and offer the
ability to safeguard arbitrary quantum states of oscillators. This review
focuses on the basic working mechanism, performance characterization, and the
many applications of GKP codes -- emphasizing recent experimental progress in
superconducting circuit architectures and theoretical advancements in multimode
GKP qubit codes and oscillators-to-oscillators (O2O) codes. We begin with a
preliminary continuous-variable formalism needed for bosonic codes. We then
proceed to the quantum engineering involved to physically realize GKP states.
We take a deep dive into GKP stabilization and preparation in superconducting
architectures and examine proposals for realizing GKP states in the optical
domain (along with a concise review of GKP realization in trapped-ion
platforms). Finally, we present multimode GKP qubits and GKP-O2O codes, examine
code performance and discuss applications of GKP codes in quantum information
processing tasks such as computing, communication, and sensing.
