Comparison of programming languages with dependent types