The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Стратегия параллельного поддержания веток Python 2 и Python ..."
Отправлено myhand, 13-Янв-14 14:00 
> Что именно считать синтаксисом и семантикой?

Синтаксис и семантику.  Например, изменение смысла оператора / для
тех же самых типов аргументов (int).  Или вот изменение синтаксиса print.

> Например, был ряд запланированных устареваний
> модулей по этой схеме:

Язык никак не поменялся.

> Я и не собираюсь это делать, потому что данное изменение относится к
> миграции на 3.x, а не сохранения стиля 2.x.

Я не знаю другого руководства для введения несовместимых изменений плавным образом.

> Но если Вы действительно хотите это сделать - путь тоже есть:
> * вводим новую функцию типа divide()
> * вводим во __future__ новый импорт, который генерирует жалобы на все непеределанные
> '/' в тексте; должно быть или '//' или 'divide()'

Никаких __future__.  Просто выходит новый релиз - и генерит предупреждения
на использование /

> * на следующих версиях восстанавливаем рекомендацию использовать '/' и депрекейтим divide().

В следующих версиях мы сперва удаляем /, затем только вводим / заново и депрекейтим divide.

> Это и есть те "строительные леса" на время перехода, о которых я
> говорил. Да, громоздко. Да, лишняя работа.

Угу.  После такого безумства - считаем оставшихся пользователей по пальцам одной руки...

Вдумайтесь: чтобы заменить "богомерзкий" синтаксис или семантику (на что-то несовместимое) - вы предлагаете какую-то часть синтаксиса языка выпилить *целиком*.  И после того как пользователи смигрировали свой код на что-то эквивалентное - восстановить старый синтаксис с нужным "патчем".  И заставить пользователей делать изменения еще раз, выпилив эквивалент...

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

>> То что описали вы - делает from __future__ import.  Теоретически, наверно
>> нет ничего невозможного во введении *всех* новшеств из py3 подобным образом.
>> А практически - они, как я понимаю разработчиков python, приведут к
>> переусложнению  потрохов CPython.
> Только на время перехода и достаточно немного - десяток лишних методов и функций.

Доказательством этого будет полный набор нововведений из py3 в __future__.  А пока,
извините, не верю.

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру