本論文では,オブジェクト指向言語と関数型言語が融合されたScala言語上に,制約プログラミング用のドメイン特化言語(DSL; Domain-Specific Language)として開発したCopris (Constraint Programming in Scala)について述べる.Coprisは,Scalaのプログラマが簡潔に制約充足問題(CSP)や制約最適化問題(COP)を記述できることを目的に設計したものであり,既存のJava上の制約プログラミング用APIであるJSR-331等よりも高い記述力を提供している.バックエンドの制約ソルバーとしては,国際制約ソルバー競技会で2年連続グローバル制約部門で優勝したSAT型制約ソルバーSugarを用いており,制約ソルバーとしての性能も高い.本論文では,Coprisの設計について説明した後,いくつかのプログラミング例を紹介することで,Coprisを用いたソフトウェア開発の利点を明らかにする.