O CAES é uma linguagem específica para desenvolvimento de hardware síncrono. Ele foi criado para ajudar os engenheiros  a descrever sistemas digitais de maneira mais clara e precisa. O clash-ghc é uma implementação da linguagem CAES que utiliza o compilador Haskell. Isso permite que os desenvolvedores escrevam código CAES com as ferramentas e recursos do Haskell, facilitando o processo de desenvolvimento. 