Purely functional programming language with dependent types
