Страницы

Утиная типизация обманывает

Считается, что неявная типизация позволяет связать слабо связанные типы, поскольку не требует указывать воплощаемые интерфейсы. Но для того, чтобы связывание через интерфейс работало, необходимо, чтобы тот, кто создаёт его воплощение, хотя и не прописывал бы явно включение самого интерфейса, но всё равно чётко бы следовал его описанию. Иначе даже похожие системы могут легко оказаться несовместимыми, хотя бы и по другому порядку параметров или их названиям, и что намного важнее — по деталям ожидаемого поведения.

Язык программирования для людей

Под языками программирования для человека часто подразумевают сверхвысокоуровневые языки, приближенные к задачам человека, в противоположность низкоуровневым языкам, которые в значительной степени нацелены на обслуживание машины. Примером может служить Python. При таком рассмотрении упускается одна важная деталь.