Однією з проблем є те, що ви можете виявити, що ви пишете багато коду, щоб висловити щось таким чином, як це зробите на іншій мові, в той час як існує більш простий спосіб у мові, якою ви користуєтесь.
Наприклад, у відповіді на переповнення стека я пояснив, як контракти з кодами, концепція, що використовується в .NET Framework, можуть бути частково імітовані в PHP, який не підтримує їх. Я в кінці кінців писав багато коду, оскільки те саме можна було зробити і з простими масивами.
Більш загально, кожна мова має свою культуру, свої найкращі практики, свій стиль.
Якщо я почну писати код C #, як це був C, це було б некрасиво.
Якщо я сприймаю Haskell як розробника Java, який був змушений використовувати Haskell, але не хочу зрозуміти його сильні сторони і просто хочу клонувати поняття Java, код, який я б написав, постраждає.
тощо.
Немає нічого поганого, намагаючись вдосконалити мову (наприклад, підвищити C # , ввівши одиниці виміру, як у F #), але якщо ви робите це занадто багато, можливо, ви повинні вибрати іншу мову, яка фактично відповідає вашим потребам.