Primitive word is a word that can not be represented by any repetition of shorter words. Since every nonempty word is a repetition of the unique primitive word, primitive words play an important role in combinatorics on words. In this article, we explain a long-standing open problem called “primitive words conjecture” which has a deep connection with the theory of context-free languages.