Я пишу это, опасаясь показаться фанатиком, но считаю, что это очень распространенное заблуждение среди тех, кто не использовал семейный язык ML * (например, Elm, Reason или Haskell). Я думаю, что по крайней мере для Вяза это не так.
У меня есть сочетание клавиш, которое будет использоваться в любой сигнатуре типа, которую Элм извлек из моего кода. Видеть:
Я обычно редактирую их, чтобы больше ограничить типы, но в большинстве случаев это занимает около 5 секунд.
Кроме того, Typing позволяет автозаполнение, что избавляет меня от необходимости печатать как в Google, так и в моем коде. Подумайте об этом: в JavaScript, как часто вам нужно искать в Google документацию по библиотеке, чтобы знать, какие функции вызывать и что передавать? В Elm все, что мне нужно сделать, это ввести .
и теперь я знаю каждую функцию и тип, который предоставляет модуль.
Хотя документы README неоценимы для начала, но действительно приятно просто найти функцию, которая делает то, что я хочу, с помощью автозаполнения.
Elm даже позволяет вам никогда не иметь дела с типами, если вы этого не хотите, потому что он может вывести каждый тип по написанному вами коду. Очень полезно, когда вы только начинаете; хотя большинство людей добавляют их позже как форму всегда актуальной документации по входам / выходам функций.
*: действительно язык, который использует алгоритм вывода типа Хиндли-Милнера, который, похоже, является просто языками семейства ML