Использование взлома инфиксного оператора в производственном коде (Python) - PullRequest
0 голосов
/ 09 марта 2010

Как вы оцениваете использование взломанного оператора infix в рабочем коде? Вопросы:

  • Эффект, который это будет иметь на скорости.
  • Возможность столкновения с объектом с этими операторами уже определены. Это кажется особенно опасным с универсальным кодом, который предназначен для обработки объектов любого типа.

Жаль, что это не встроено - это действительно улучшает читабельность

Ответы [ 2 ]

6 голосов
/ 09 марта 2010

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

Если вы хотите превратить Python в один из немногих языков, которые допускают пользовательские инфиксные операторы (например, Haskell), вам лучше разработать способ динамического изменения синтаксиса для этой цели, реализовать его как исправьте синтаксический анализатор Python и начните лоббировать его - если он улучшает читабельность настолько, насколько вы говорите, тогда не должно быть так сложно получить одобрение Гвидо для чистой, простой в объяснении реализации (если Гвидо, как я Подозреваю, следует вместо этого строго отклонить его, тогда вы можете подумать, кто лучше разбирается в читабельности языка: вы или разработчик одного из самых читаемых широко распространенных языков? но я не могу направить Гвидо, это Тим работа бота; -).

1 голос
/ 09 марта 2010

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

Я думаю, что вы должны предпочесть ясность, а не краткость в целом - Python не C!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...