Cypher is a humane query language which is easy to read and understand. It borrows on other languages like SQL and SPARQL but brings it its own flavor. Cypher uses ASCII ART to describe graph patterns that you’re looking for.
The Cypher query language uses Scala’s parser combinator library in combination with functional approaches. This talk describes the internals of the Cypher implementation.