Implementation of SCMF conventions and principles in Haskell as a class project for CS519 (Domain Specific Languages) class