В языке программирования Python, который недавно поднялся на третье место в рейтинге языков программирования TIOBE, вскоре произойдут важные изменения. Из него будут исключены служебные слова master («хозяин») и slave («раб»). Так решил создатель языка Гвидо ван Россум, который пошел на этот шаг по соображениям политкорректности.
Решению ван Россума предшествовала дискуссия среди разработчиков языка: одни говорили, что эти слова ассоциируются с рабством и неравноправием, а другие подчеркивали, что это лишь устоявшиеся термины, которые не имеют ничего общего с одобрением рабства. Последние также указывали, что замена слов может привести к проблемам с обратной совместимостью. То есть, программы, использующие старые версии Python, не будут корректно работать в новых версиях.
Изменения вступят в силу в версии Python 3.8. Термины master и slave будут заменены на parent/main/server («родитель»/«главный»/«сервер») и child/worker («ребенок»/«работник»).
Отметим, что подобное происходит не впервые: в 2014 году термины master и slave убрали из фреймворка Django, основанного на Python. Их заменили на leader («лидер») и follower («последователь»).
Кроме того, сейчас сообщество разработчиков СУБД Redis также обсуждает предложение по избавлению от терминов “master” и “slave”. При этом, предлагаются более кардинальные изменения, такие как переименование операции “SLAVEOF” в “REPLICAOF” и настройки “slaveof” в “replicaof” (для сохранения совместимости поддержка “SLAVEOF” будет сохранена в виде опции). Поддержка признака “slave” в командах INFO и ROLE пока будет оставлена, так как связана с большими нарушениями совместимости. Но в будущем планируется предложить альтернативу INFO и заменить в ROLE “slave” на “replica”.
Источник: Python Bag Tracker, meduza и opennet
Сообщить об опечатке
Текст, который будет отправлен нашим редакторам: