Часто он слышит, что Haskell (который я не знаю) имеет очень интересную систему типов. Я очень хорошо знаком с Java и немного с С#, и иногда бывает так, что я борюсь с системой типов, поэтому какой-то дизайн подходит или работает лучше определенным образом.
Это заставило меня задуматься...
Какие проблемы возникают из-за недостатков системы типа Java/С#? Как вы с ними справляетесь?