URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 86695
[ Назад ]

Исходное сообщение
"Доступен язык программирования Python 3.3"

Отправлено opennews , 30-Сен-12 00:31 
После 19 месяцев разработки представлен (http://www.python.org/getit/releases/3.3.0/) релиз  языка программирования Python 3.3 (http://www.python.org).  Python 3.3 является первой стабильной веткой, выпущенной после истечения моратория (http://www.opennet.me/opennews/art.shtml?num=24234) на изменение синтаксиса языка, введённого вскоре после релиза Python 3.1 с целью предоставления возможности создателям альтернативных реализаций языка Python обеспечить в своих продуктах полную совместимость с классическим CPython 3.

Среди добавленных в Python 3.3 новшеств (http://docs.python.org/py3k/whatsnew/3.3.html):


-  Поддержка (http://www.python.org/dev/peps/pep-0405) виртуальных окружений, позволяющих использовать отдельные изолированные представления инсталляций Python, вынесенные в отдельные директории. Каждое виртуальное окружение содержит свой бинарный файл с интерпретатором Python (можно использовать разные версии Python) и свой набор пакетов. При этом все виртуальные окружения используют один общий набор стандартных библиотек Python. Для создания виртуальных окружений следует использовать модуль venv (http://docs.python.org/py3k/library/venv.html#module-venv);

-  Поддержка (http://www.python.org/dev/peps/pep-0380/) синтаксиса "yield from выражение" для делегирования части операций одного генератора другому генератору. Указанное нововведение позволяет вынести из генератора часть кода, содержащую 'yield', и поместить её к другому генератору. Значения, возвращаемые сформированными подобным способом субгенераторами, становятся доступны делегирующему генератору;
-  Новые модули: "faulthandler" для диагностики крахов,  "ipaddress" для манипулирования IP-адресами и "lzma" для сжатия данных методом LZMA/XZ;
-  Переработанная (http://www.python.org/dev/peps/pep-3151) иерархия исключений для системных вызовов (os) и ввода/вывода (io);
-  Улучшение поддержки Unicode. Адаптивное представление (http://www.python.org/dev/peps/pep-0393) Unicode-строк, позволяющее забыть о различиях между  "wide" и "narrow". В объекты str добавлена поддержка универсального синтаксиса "u'" для явного указания unicode строк. Обеспечено более компактное хранение unicode-строк;

- Переписанный на языке Си модуль "decimal" позволил до 80 раз увеличить производительность целочисленных операций;
-  Использование по умолчанию  importlib в качестве системы импорта (__import__);
-  Поддержка (http://www.python.org/dev/peps/pep-0420/) отдельных пространств имён (Namespace) в пакетах, позволяющих разнести один Python пакет по нескольким директориям;
-  Поддержка (http://www.python.org/dev/peps/pep-3155/) атрибута __qualname__ для явной идентификации родительских классов и функций;
-  Возможность (http://www.python.org/dev/peps/pep-0409/) скрытия контекста исключений;
-  Реализация (http://www.python.org/dev/peps/pep-0418) расширенных и независимых от платформы часов в модуле  "time";
-  Обеспечение (http://www.python.org/dev/peps/pep-0412) возможности совместного использования словарями идентичных ключей для хранения атрибутов объектов, что позволило существенно снизить потребление памяти для объектно-ориентированного кода;
-  Добавлен класс "collections.ChainMap (http://docs.python.org/py3k/library/collections.html#collect...)" для связывания словарей в единое представление;
-  В модулях "os" и "signal" добавлены обвязки для дополнительных POSIX-функций, таких как "sendfile()";
-  По умолчанию включен режим рандомизации хэшей, нацеленный на решение проблемы с предсказуемыми коллизиями в реализации алгоритма хэширования для типов dict и set.

URL: http://www.python.org/getit/releases/3.3.0/
Новость: http://www.opennet.me/opennews/art.shtml?num=34971


Содержание

Сообщения в этом обсуждении
"Доступен язык программирования Python 3.3"
Отправлено Аноним , 30-Сен-12 00:31 
>является первой стабильной веткой, выпущенной после истечения моратория на изменение синтаксиса языка,

Хм, только я здесь вижу взаимоисключающие параграфы?


"Доступен язык программирования Python 3.3"
Отправлено Аноним , 30-Сен-12 00:53 
Ну так правильно с 3.1 по 3.3 синтаксис не меняли, а в 3.3 вон сколько изменений, сейчас начнётся новый цикл, мораторий на эти изменения, только баг-фиксы.

"Доступен язык программирования Python 3.3"
Отправлено Аноним , 30-Сен-12 11:48 
Нет, тут логическая ошибка

"Доступен язык программирования Python 3.3"
Отправлено Аноним , 30-Сен-12 11:50 
Нет, пожалуй всё правильно

"Доступен язык программирования Python 3.3"
Отправлено Аноним , 30-Сен-12 21:59 
да

"Доступен язык программирования Python 3.3"
Отправлено Онаним , 30-Сен-12 02:14 
У меня 2 вопроса:

1. Таки как там с Unicode: лучше или хуже, чем в Java.
2. Как там с параллелизацией: потоки, актёры и т.п...

Слышал я, что вообще в Питоне с этими вещами было паршиво. Может в этой версии уже нет?


"Доступен язык программирования Python 3.3"
Отправлено Аноним5 , 30-Сен-12 03:19 
Вам надо посмотреть Go.

1. В Go всё Unicode -- полностью. Даже синтаксис. Серьезно! Вы можете называть переменные, названия функций и т.д. на кириллице. Создатели Go, Роб Пайк и Кен Томпсон -- авторы UTF-8.

2. Неотъемлемая часть языка. Посмотрите на goroutines.


"Доступен язык программирования Python 3.3"
Отправлено bugmenot , 30-Сен-12 03:54 
> Вы можете называть переменные, названия функций и т.д. на кириллице.

Зачем?
/me стонет


"Доступен язык программирования Python 3.3"
Отправлено ааноним , 30-Сен-12 05:57 
Как зачем? Думаю кодеры из 1С например будут только рады)))

"Доступен язык программирования Python 3.3"
Отправлено Anonymous1 , 30-Сен-12 09:09 
> Как зачем? Думаю кодеры из 1С например будут только рады)))

Подозреваю, что "кодеры из 1С" являются, в массе своей, однопрограммными или одноязычными, и никакие другие языки, кроме с трудом осиленного и изначально созданного для бухгалтеров диалекта 1С, их ничуть не интересуют. За примерами далеко ходить не нужно: подсистема обмена почтовыми сообзениями в 1С, FTP подсистема в 1С, ...
Какая уж тут радость - скорее огорчение.


"Доступен язык программирования Python 3.3"
Отправлено Аноним , 30-Сен-12 10:29 
> Подозреваю, что "кодеры из 1С" являются, в массе своей,

однопрограммными или одноязычными
Вы ошибаетесь.
Что касается русскоязычных переменных, то это действительно на удивление очень удобно (для русскоязычных разработчиков). По сути текст программы - это просто текст на родном языке.
конструкцию
ЕстьПрава = Ложь;
...
Если ЕстьПрава Тогда
  СделайТоТо();
КонецЕсли;
поймёт даже человек, который про язык 1с даже не слышал.


"Доступен язык программирования Python 3.3"
Отправлено Аноним , 30-Сен-12 10:38 
> прочитать сможет даже человек, который про язык 1с даже не слышал.

Пофиксил.

Нормальный программист™ сразу же закроет окно с исходным кодом, а автора будет считать идиотом. А человек с улицы, не разбирающийся в программировании, 100% ничего не поймет, хоть и прочитать сможет.


"Доступен язык программирования Python 3.3"
Отправлено uuser , 30-Сен-12 15:13 
Интересно, на каком языке пишет англоязычный "Нормальный программист"™ (ну, или, во всяком случае, именует переменные)? Может быть, на русском? Представляю себе фейспалм "Нормального программиста"™ Роба Пайка, там, или Ричи, когда они открывают исходник на C и видят, к примеру, следующий быдлокод:

цел главный(цел аргк, сим **аргв) {
///...
  вернуть ВЫХОД_УСПЕШНЫЙ;
}


"Доступен язык программирования Python 3.3"
Отправлено Аноним , 30-Сен-12 16:38 
В английском слова почти не склоняются/не спрягаются, так что программы на латинице выглядят не настолько бредово, как на кириллице. И еще английские слова короче при том же объеме информации - меньше писанины. Но к этому можно привыкнуть, это чисто субъективный недостаток на уровне "нравится - не нравится", как бы некоторым ни не хотелось этого признавать

"Доступен язык программирования Python 3.3"
Отправлено mine , 30-Сен-12 12:13 
Сразу видно человека, всю жизнь работающего в местечковой конторе и ничего кроме своего кода не видевшего.
Потому что хватает один раз увидеть код на несколько сотен метров, снабжённый комментариями на хрен знает скольки языках, дабы отучиться от подобных мыслей.

"Доступен язык программирования Python 3.3"
Отправлено YetAnotherOnanym , 30-Сен-12 13:27 
Фу как неполиткорректно! А как же мультикультурализм?

"Доступен язык программирования Python 3.3"
Отправлено Аноноим , 30-Сен-12 14:10 
> Фу как неполиткорректно! А как же мультикультурализм?

У вас политкорректность головного мозга.

«Цветным не нравится книга «Маленький чёрный Самбо». Сжечь её. Белым неприятна «Хижина дяди Тома». Сжечь и её тоже. Кто-то написал книгу о том, что курение предрасполагает к раку лёгких. Табачные фабриканты в панике. Сжечь эту книгу. Нужна безмятежность, Монтэг, спокойствие. Прочь всё, что рождает тревогу. В печку!! Похороны нагоняют уныние — это языческий обряд. Упразднить похороны.» — «451 градус по Фаренгейту», Рэй Брэдбери, 1953 год


"Доступен язык программирования Python 3.3"
Отправлено Аноним , 30-Сен-12 23:47 
Что общего у политкорректности и сжигания книг?

"Доступен язык программирования Python 3.3"
Отправлено Аноним , 01-Окт-12 00:11 
Сначала все начинается с политкорректности, а заканчивается сжиганием книг.

"Доступен язык программирования Python 3.3"
Отправлено Aquarius , 03-Окт-12 09:10 
многие проявления политкорректности неполиткорректны

"Доступен язык программирования Python 3.3"
Отправлено Аноним , 04-Окт-12 21:07 
только чувства мусульман неприкосновенны, все неверные должны уважать аллаха. - так какой-то чурка в новостях говорил. я смеялся

"Доступен язык программирования Python 3.3"
Отправлено PereresusNeVlezaetBuggy , 06-Окт-12 01:32 
Английский - профессиональный язык айтишников, как латынь - врачей. Смиритесь с этим. Ну или изобретите уже что-нибудь покруче Интернета.

"Доступен язык программирования Python 3.3"
Отправлено demo , 01-Окт-12 11:39 
Красота какая!

Только право писать идентификаторы на родном языке автоматически обозначает возможность получения исходных текстов с идентификаторами на фиг знает каком языке.

Ад программиста скоро будет выглядеть так -
Имя функции и большинство идентификаторов - китайскими иероглифами, а потом смесь деванагари и кириллицы.

Так что я лучше продолжу пользоваться ломанным английским...


"Доступен язык программирования Python 3.3"
Отправлено YetAnotherOnanym , 01-Окт-12 11:48 
Мне как-то довелось копаться в PHP-коде где всё было на итальянском (HotelDruid, есличо). Ничего, продрался, хотя в словарь нырять каждую минуту, конечно же напрягает.
Я это к тому, что возможность писать только латиницей сильно сужает число языков, но не сводит его к одному английскому. Надо ещё чтобы авторы понимали, что их код будет читать кто-то, говорящий на другом языке.

"Доступен язык программирования Python 3.3"
Отправлено Аноним , 04-Окт-12 21:09 
> возможность писать только латиницей сильно сужает

nikto, tem bolee, ne otmenyal translit


"Доступен язык программирования Python 3.3"
Отправлено arisu , 04-Окт-12 23:44 
>> возможность писать только латиницей сильно сужает
> nikto, tem bolee, ne otmenyal translit

за транслит в названиях надо убивать, предварительно медленно оторвав калёными щипцами тестикулы.


"Доступен язык программирования Python 3.3"
Отправлено gegMOPO4 , 02-Окт-12 00:58 
Появится профессия программист-переводчик.

"Доступен язык программирования Python 3.3"
Отправлено grayich , 30-Сен-12 08:07 
а почему бы и нет ? :)

"Доступен язык программирования Python 3.3"
Отправлено жабабыдлокодер , 30-Сен-12 18:01 
>> Вы можете называть переменные, названия функций и т.д. на кириллице.
>
>Зачем?
>/me стонет

Мне приходилось иметь дело со XSD схемой, написанной русскими буквами. JAXB быстренько преобразовал их в классы Java (в жабе можно использовать в именах UTF-символы, включая кириллицу), после чего я не стонал, а ругался: все время переключать раскладки очень неудобно. Только автозаполнение в NetBeans немного выручало.


"Доступен язык программирования Python 3.3"
Отправлено Тарелькин , 03-Окт-12 17:02 
>Зачем?

Я тоже так думал, пока кто-то не привел мне пример. Правда, не с кириллицей, а с математическими формулами с греческими буквами. В научной программе, вполне вероятно, будет понятнее, если написать φ = ∏(p[i] ^ (α[i] - 1) * (p[i] - 1)), чем phi = product(pow(p[i], a[i] - 1) * (p[i] - 1)). Особенно если это код в середине научной статьи, где употребляются те же самые буквы.


"Доступен язык программирования Python 3.3"
Отправлено arisu , 03-Окт-12 22:33 
кто мешает сделать транслятор из такой записи в то, что понимает компилятор и не тащить вредные фичи в сам компилятор?

"Доступен язык программирования Python 3.3"
Отправлено Тарелькин , 04-Окт-12 06:01 
>кто мешает сделать транслятор из такой записи в то, что понимает компилятор и не тащить вредные фичи в сам компилятор?

Ну он уже есть, только встроен в компилятор, и не надо каждому писать свой велосипед.

В большинстве случаев не надо - большинство не пользуется. А кто очень хочет воспользоваться не к месту, тот и латинскими буквами напишет "void narisovatIzobrazhenie()".

Потом, популярные языки программирования (C++, Javascript, в какой-то мере Java) содержат колоссальное количество фич, позволяющих выстрелить себе в ногу (в C++ можно это сделать при сочинении Hello World). Почему бы не выкинуть "goto" из C и C++, если он нужен только очень редко?


"Доступен язык программирования Python 3.3"
Отправлено arisu , 04-Окт-12 06:22 
> Ну он уже есть, только встроен в компилятор, и не надо каждому
> писать свой велосипед.

зачем «каждому»? один написал и выложил.

> Почему бы не выкинуть «goto» из C и C++, если он нужен только очень редко?

потому что «выкинуть» — не то же самое, что «добавить». хотя из цпп гото выкинуть вполне нужно бы.


"Доступен язык программирования Python 3.3"
Отправлено PereresusNeVlezaetBuggy , 06-Окт-12 01:35 
>> Ну он уже есть, только встроен в компилятор, и не надо каждому
>> писать свой велосипед.
> зачем «каждому»? один написал и выложил.
>> Почему бы не выкинуть «goto» из C и C++, если он нужен только очень редко?
> потому что «выкинуть» — не то же самое, что «добавить». хотя
> из цпп гото выкинуть вполне нужно бы.

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

C++ изначально мультипарадигменный, у него задача такая - давать возможность подстроиться. Иногда (и не так уж редко) goto удобен.


"Доступен язык программирования Python 3.3"
Отправлено arisu , 06-Окт-12 21:55 
> Иногда (и не так уж редко) goto удобен.

и когда же? в си — да, там нет finally. а зачем goto в c++? пользуйся механизмом исключений, он для того и запилен.

а, кстати: какие там у c++ «парадигмы»? обычный c, только сильно испорченый неудачной попыткой затащить туда ООП. удачная — это в ObjC.


"Доступен язык программирования Python 3.3"
Отправлено PereresusNeVlezaetBuggy , 07-Окт-12 15:05 
>> Иногда (и не так уж редко) goto удобен.
> и когда же? в си — да, там нет finally. а зачем
> goto в c++? пользуйся механизмом исключений, он для того и запилен.

Во-первых, исключения совсем для другого (хотя иногда области применения и могут перекрываться). Во-вторых, метки не порождают множества уровней вложенности - наоборот, они делают код "плоским". Иногда это плохо. Даже очень. А иногда - наоборот, упрощает и делает более удобочитаемым (sic!) код. Это не говоря о том, что добавление поддержки исключений утяжеляет программу чисто из-за добавления соответствующего кода компилятором, что для мелких утилит (Unix-way, всё такое) весьма заметно.

> а, кстати: какие там у c++ «парадигмы»? обычный c, только сильно испорченый
> неудачной попыткой затащить туда ООП. удачная — это в ObjC.

C++ - это швейцарский нож. Со всеми недостатками и достоинствами швейцарского ножа. Он слишком тяжёл для многих простых задач. Но там, где нужно совмещать высоко- и низкоуровневые сущности, ему нет равных. И коли уж мы их совмещаем, то глупо не пользоваться имеющимся инструментарием. Попытки использовать C++, скажем, чисто для ООП, с избеганием даже тени процедурного подхода, выглядят грустно.

Objective C - приятный язык. Просто другой.


"Доступен язык программирования Python 3.3"
Отправлено arisu , 07-Окт-12 21:20 
> Во-первых, исключения совсем для другого (хотя иногда области применения и могут перекрываться).

вот с этого места поподробней. а то начинает закрадываться подозрение, в котором фигуриует слово «говнокод».

> Во-вторых, метки не порождают множества уровней вложенности — наоборот, они делают
> код «плоским».

долой циклы! и вообще блоки. только метки, только плоский код! (пардон, не удержался)

goto в c++ всё равно приходится увязывать с объявлениями более-менее сложных объектов. в итоге получается каша. которую чаще проще и красивей можно решить при помощи декомпозиции, грамотного применения return и да — исключений.

> что добавление поддержки исключений утяжеляет программу чисто из-за добавления соответствующего
> кода компилятором, что для мелких утилит (Unix-way, всё такое) весьма заметно.

зачем писать мелкие утилиты на цпп? если используются фичи библиотек цпп, то утилита и так распухнет. а если нет — то чего было выпендриваться?

> C++ — это швейцарский нож.

скорее голландский сыр.

> Попытки использовать C++, скажем, чисто для ООП, с избеганием даже тени процедурного подхода, выглядят грустно.

потому что нормального ООП там нет. дурацкий симула-подход, который растиражировали остальные — костыль-пародия.

> Objective C — приятный язык. Просто другой.

ага. наглядно показывающий, что такое ООП и как надо его добавлять, оставаясь полностью совместимым с C. я, правда, на ObjC2 не смотрел: кажется, начали портить.


"Доступен язык программирования Python 3.3"
Отправлено PereresusNeVlezaetBuggy , 09-Окт-12 01:55 
>> Во-первых, исключения совсем для другого (хотя иногда области применения и могут перекрываться).
> вот с этого места поподробней. а то начинает закрадываться подозрение, в котором
> фигуриует слово «говнокод».

Что именно "поподробней"? Страуструпа пересказывать как-то не хочется. Исключения, если уж сравнивать с переходами по меткам, то тем, которые setjmp()/longjmp() и иже с ними. Их задача - не добавляя множества явных путей, передать управление в случае нестандартной ситуации в нужное место через произвольное количество уровней на стеке. При использовании "умных" указателей и finally { ... } их можно использовать для подчистки, да. Но, во-первых, вы когда-нибудь видели в не очень-то и сложном методе пять уровней вложенности finally? Это адЪ, особенно при наличии вложенных циклов и всяких там if'ов в промежутке. А во-вторых, goto бывает полезен в неочевидных ситуациях. Верить заставлять не собираюсь. Если будет конкретное доказательство абсолютной бесполезности (даже не вреда) goto в C++ - можно будет говорить предметно.

>> Во-вторых, метки не порождают множества уровней вложенности — наоборот, они делают
>> код «плоским».
> долой циклы! и вообще блоки. только метки, только плоский код! (пардон, не
> удержался)

:-P Пардон пардоном, а из контекста вырывать нехорошо.

> goto в c++ всё равно приходится увязывать с объявлениями более-менее сложных объектов.
> в итоге получается каша. которую чаще проще и красивей можно решить
> при помощи декомпозиции, грамотного применения return и да — исключений.

Такая каша возникает обычно из-за смешивания уровней логики. Частая проблема - неумение, а порой и практическая невозможность, произвести декомпозицию функции/метода приводит к гипертрофированию оного. В этом случае goto действительно становятся бОльшим злом, нежели умные обёртки и многоступенчатые try { ... }.

>> что добавление поддержки исключений утяжеляет программу чисто из-за добавления соответствующего
>> кода компилятором, что для мелких утилит (Unix-way, всё такое) весьма заметно.
> зачем писать мелкие утилиты на цпп? если используются фичи библиотек цпп, то
> утилита и так распухнет. а если нет — то чего было
> выпендриваться?

Утяжеление не только за счёт размера кода, но ещё и за счёт дополнительно работающего кода (снижение производительности, все дела). Хотя заранее соглашусь, потери сравнительно небольшие, если не запускать процессы тысячу раз в секунду. :)

>> C++ — это швейцарский нож.
> скорее голландский сыр

... а кому и свиной хрящик. Дело вкуса.

>> Попытки использовать C++, скажем, чисто для ООП, с избеганием даже тени процедурного подхода, выглядят грустно.
> потому что нормального ООП там нет. дурацкий симула-подход, который растиражировали остальные
> — костыль-пародия.

Ну нет. И что? Программы на C++ почему-то продолжают исправно работать несмотря на свою не-ООПность. Хуже того - такой языковой кошмар для любителей элегантности, как Perl, тоже продолжает существовать вместе с тоннами написанного на нём кода - и далеко не всегда такого уж плохого.

Я готов согласиться с тем, что C++ - это мегакостыль. Возможно, самый большой костыль за всю историю программирования. Но пока ничего глобально лучшего нет - только нишевые решения. Так что увы.


"Доступен язык программирования Python 3.3"
Отправлено arisu , 09-Окт-12 03:17 
> Что именно «поподробней»?

зачем нужны goto, окромя как:
а) эмулировать finally, и
б) выбираться из очень глубоких циклов (что в большинстве случаев, пардон, означает говнокод, который надо переписать нормально — возможно, изменив логику).

> вы когда-нибудь видели в не очень-то и сложном методе пять уровней вложенности
> finally?

но зачем? это или человек не знает про автоматические объекты, или у него руки не в ту точку примонтированы.

> А во-вторых, goto бывает полезен в неочевидных ситуациях.

вот про это я и просил «поподробней».

> Верить заставлять не собираюсь. Если будет конкретное доказательство абсолютной бесполезности
> (даже не вреда) goto в C++ — можно будет говорить предметно.

вообще-то намного проще доказать нужность — для этого достаточно одного примера, который без goto или не делается никак, или делается настолько криво, что «ужас-ужас-ужас», и переписать нормально который не выходит.

а для доказательства «ненужности» надо рассмотреть *все возможные применения* goto. это нереально.

> :-P Пардон пардоном, а из контекста вырывать нехорошо.

ну я же говорю: не удержался. %-)

> Утяжеление не только за счёт размера кода, но ещё и за счёт
> дополнительно работающего кода (снижение производительности, все дела).

если в программе возникла исключительная ситуация — то это, пардон, исключительная ситуация. если программа *вся* построена на кидании исключений — это уже клиника. а при нормальном execution flow накладные потери на поддержку механизма исключений настолько малы, что можно не обращать на них внимания. ибо если таки надо обращать, то язык явно был выбран неправильно.

> Ну нет. И что? Программы на C++ почему-то продолжают исправно работать несмотря
> на свою не-ООПность.

а это вообще к теме беседы не относится.

> Но пока ничего глобально лучшего нет — только нишевые решения.

пардон, даже D лучше. не надо путать «есть куча людей, которые кое-как умеют писать на C++, да куча кода написана — потому это лучшее решение» с «архитектурно ничего лучшего не придумали». «куча кода и людей» не обозначает «хорошо» — достаточно взглянуть на PHP.


"Доступен язык программирования Python 3.3"
Отправлено Тарелькин , 04-Окт-12 06:24 
Да и потом, смотри, как можно увеличить наглядность названий во многих программах:

Microsoft®InternetExplorer®DownloadURL := "http://windows.microsoft.com/ru-RU/internet-explorer/product...


"Доступен язык программирования Python 3.3"
Отправлено Аноним , 06-Окт-12 19:11 
>>кто мешает сделать транслятор из такой записи в то, что понимает компилятор и не тащить вредные фичи в сам компилятор?
> Ну он уже есть, только встроен в компилятор, и не надо каждому
> писать свой велосипед.
> В большинстве случаев не надо - большинство не пользуется. А кто очень
> хочет воспользоваться не к месту, тот и латинскими буквами напишет "void
> narisovatIzobrazhenie()".
> Потом, популярные языки программирования (C++, Javascript, в какой-то мере Java) содержат
> колоссальное количество фич, позволяющих выстрелить себе в ногу (в C++ можно
> это сделать при сочинении Hello World). Почему бы не выкинуть "goto"
> из C и C++, если он нужен только очень редко?

Ой ну вот ненадо, на си пару раз себе в ногу стрельнешь и все. Научился обращаться.
Да сложно, да нужно башко думать.


"Доступен язык программирования Python 3.3"
Отправлено pro100master , 30-Сен-12 22:19 
> Вам надо посмотреть Go.

а напаркуа? В Go есть тысячи хороших библиотек? Может быть хотя бы 10 фреймворков? Голый язык с понтами и кучкой приближенных сектантов. До Python еще пилить и пилить, а до JM, как до Солнца улиткой.


"Доступен язык программирования Python 3.3"
Отправлено bav , 30-Сен-12 08:15 
> Слышал я, что вообще в Питоне с этими вещами было паршиво.

Рабинович напел?



"Доступен язык программирования Python 3.3"
Отправлено anonymous , 30-Сен-12 09:10 
> У меня 2 вопроса:
> 1. Таки как там с Unicode: лучше или хуже, чем в Java.
> 2. Как там с параллелизацией: потоки, актёры и т.п...
> Слышал я, что вообще в Питоне с этими вещами было паршиво. Может
> в этой версии уже нет?

В Tcl с unicode все отлично, например. Потоки, мьютексы, пулы потоков, до версии 8.5 расширением, в 8.6 есть поддержка кооперативной многопоточности в ядре языка.


"Доступен язык программирования Python 3.3"
Отправлено Ещё тот Аноним , 30-Сен-12 11:00 
Зато в Tcl с синтаксисом очень паршиво.

"Доступен язык программирования Python 3.3"
Отправлено YetAnotherOnanym , 30-Сен-12 13:34 
> Зато в Tcl с синтаксисом очень паршиво.

На Паскаль не похож?


"Доступен язык программирования Python 3.3"
Отправлено Аноним , 30-Сен-12 19:37 
Забавные у вас представления о паршивости синтаксиса.
Нет, в случае с Tcl проблемы гораздо глубже.

"Доступен язык программирования Python 3.3"
Отправлено anonymous , 30-Сен-12 22:41 
> Забавные у вас представления о паршивости синтаксиса.
> Нет, в случае с Tcl проблемы гораздо глубже.

Хотел бы немного подискутировать на тему проблем, если Вы не против.


"Доступен язык программирования Python 3.3"
Отправлено arisu , 01-Окт-12 08:11 
> Хотел бы немного подискутировать на тему проблем, если Вы не против.

ОноНеПохожеНаСи!!111111


"Доступен язык программирования Python 3.3"
Отправлено YetAnotherOnanym , 01-Окт-12 11:55 
Мне однажды пришлось писать на tcl, правда, совсем немного - нужен был скрипт на Expect, способный делать более сложные штуки, чем "дождаться login, послать логин, дождаться password, послать пароль", на всё ушло около часа, при том, что раньше с tcl не соприкасался. Никаких таких ужасных особенностей в синтаксисе tcl я тогда не усмотрел.


"Доступен язык программирования Python 3.3"
Отправлено gegMOPO4 , 30-Сен-12 14:19 
Tcl поддерживает Unicode ограниченно — только Basic Multilingual Plane.

"Доступен язык программирования Python 3.3"
Отправлено arisu , 01-Окт-12 08:12 
> Tcl поддерживает Unicode ограниченно — только Basic Multilingual Plane.

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


"Доступен язык программирования Python 3.3"
Отправлено gegMOPO4 , 01-Окт-12 10:20 
Зачем вам уникод? ASCII хватит для всех.

"Доступен язык программирования Python 3.3"
Отправлено arisu , 01-Окт-12 10:25 
> Зачем вам уникод? ASCII хватит для всех.

зачем в юникоде эти дурацкие иероглифы, отдельные диакритические знаки и композиты? мусор это всё. кто не хочет вводить нормальный алфавит — должен страдать.


"Доступен язык программирования Python 3.3"
Отправлено gegMOPO4 , 01-Окт-12 10:47 
Правильно. Зачем в кириллице буквы, дублирующие латинские, — А, В, Е, К, М, Н, О, Р, С, Т, У, Х? Зачем Г, если есть G? Зачем переворачивать нормальные буквы — И, Я, Ь?

"Доступен язык программирования Python 3.3"
Отправлено arisu , 01-Окт-12 10:52 
не тупи.

"Доступен язык программирования Python 3.3"
Отправлено Аноним , 30-Сен-12 11:58 
> 2. Как там с параллелизацией: потоки, актёры и т.п...

А где сейчас с параллелизацией хорошо? Неужели в джаве? А я всегда думал что джава и параллельные вычисления это взаимно исключающие параграфы. Что-то получше должно быть в ерланге и хаскелле, но опять же программировать на них почти невозможно. Резолюция проста и неутешительна: параллельные вычисления это миф


"Доступен язык программирования Python 3.3"
Отправлено Аноним , 30-Сен-12 19:38 
> А где сейчас с параллелизацией хорошо? Неужели в джаве? А я всегда
> думал что джава и параллельные вычисления это взаимно исключающие параграфы. Что-то
> получше должно быть в ерланге и хаскелле, но опять же программировать
> на них почти невозможно. Резолюция проста и неутешительна: параллельные вычисления это
> миф

А в это время суровые сишники продолжали писать распараллеленные числодробильные приложения.


"Доступен язык программирования Python 3.3"
Отправлено Аноним , 01-Окт-12 02:16 
Господа! Смертельный номер господа!

Обычному домашнему хомячку подсунули каплю никотина:
>Что-то получше должно быть в ерланге и хаскелле,

Охщи ...
>но опять же программировать на них почти невозможно. Резолюция проста и неутешительна: параллельные вычисления это миф

Господа - приносим извинения за ошмётки несчастного смелого хомячка долетевшие да первых рядов ...


"Доступен язык программирования Python 3.3"
Отправлено arisu , 01-Окт-12 08:13 
> в ерланге и хаскелле, но опять же программировать на них почти невозможно

что, не похоже на похапэ? бывает.


"Доступен язык программирования Python 3.3"
Отправлено Ашибка , 30-Сен-12 12:28 
>У меня 2 вопроса:
>1. Таки как там с Unicode: лучше или хуже, чем в Java.

В 3 ветке лучше, во 2-ой хуже.

>2. Как там с параллелизацией: потоки, актёры и т.п...

Все хорошо.

>Слышал я, что вообще в Питоне с этими вещами было паршиво. Может в этой версии уже нет?

Вы не понимаете http://xkcd.ru/353/


"Бред"
Отправлено Sauron , 30-Сен-12 19:34 
На самом деле с параллелизацией там всё ужасно из за GIL, который банально не дает нескольким тредам одновременно исполняться.
http://habrahabr.ru/post/84629/

То есть для многопоточного программирования Питон по просту непригоден!


"Бред"
Отправлено Аноним , 30-Сен-12 19:41 
> На самом деле с параллелизацией там всё ужасно из за GIL, который
> банально не дает нескольким тредам одновременно исполняться.
> То есть для многопоточного программирования Питон по просту непригоден!

И тем не менее с многопоточным программированием парсинг сайтов намного ускоряется. Для вычислений нужно использовать многопроцессорное программирование.


"Бред"
Отправлено Глаз Саурона , 30-Сен-12 20:01 
>На самом деле с параллелизацией там всё ужасно из за GIL, который банально не дает нескольким тредам одновременно исполняться.

Опять пришли "специалисты" прочитавшие одну статейку. GIL это механизм, который делает параллельное исполнение простым и понятным, в один момент времени исполняется один тред на
одном камне. Ничто не мешает запускать несколько тредов, или несколько процессов на разных камнях. Если есть желание самому синхронизировать потоки, и свихнуть себе мозги то питон не для тебя.


"Бред"
Отправлено demo , 01-Окт-12 11:56 
> То есть для многопоточного программирования Питон по просту непригоден!

Немного не так.
GIL блокирует не потоки, а возможность параллельного исполнения кода в виртуальной машине python-а. Различие в том, что когда выполняется "тяжёлый" код в модуле написанном на C (ввод-вывод, базы данных, манипуляции матрицами и т.п.) GIL обычно снимается и потоки получают возможность исполняться параллельно.

Программисты на java стараются всё затащить в java. Программисты на python время от времени находят ёмкие по времени куски и переписывают их на C.


"Бред"
Отправлено Бред , 01-Окт-12 16:48 
>GIL блокирует не потоки, а возможность параллельного исполнения кода в виртуальной машине python-а.

Гениально! Масло не масленое, а масленое.

> Различие в том, что когда выполняется "тяжёлый" код в модуле написанном на C (ввод-вывод, базы данных, манипуляции матрицами и т.п.) GIL обычно снимается и потоки получают возможность исполняться параллельно.

Стандартная библиотека чуть менее чем полностью написана на Си.


> Программисты на python время от времени находят ёмкие по времени куски и переписывают их на C.

Раньше переписывали, сейчас есть Cython.


"Бред"
Отправлено demo , 01-Окт-12 18:13 
> Гениально! Масло не масленое, а масленое.

Конечно, гениально. Если у Вас есть 100 потоков, выполняющих код типа x = x + 1,
то из-за GIL реально выполняться будет только один. А если эти 100 потоков заняты чем-то более интересным (читают/пишут файлы, пересылают данные по сети, тормошат sqlite, потрошат виндовый реестр - далее сами ищите использование макроса Py_BEGIN_ALLOW_THREADS в исходных текстах python) то GIL снимается и эффективность работы повышается.

> Стандартная библиотека чуть менее чем полностью написана на Си.

Да, и Py_BEGIN_ALLOW_THREADS/Py_END_ALLOW_THREADS встречается в ней 300 раз.
Если выйти за пределы стандартной боблиотеки, то тоже можно найти примеры.
Например, в PyQt тоже применяется этот приём (и кажется даже доходит до злоупотребления)

> Раньше переписывали, сейчас есть Cython.

По разному бывает. Так как Вы пишете - наверное тоже можно.

В новости вот пишут - "Переписанный на языке Си модуль "decimal" позволил до 80 раз увеличить производительность целочисленных операций". Я посмотрел код - что-то на применение Cython не похоже. В моём "мире", завязанном на Qt представляется логичным переписывать куски на С++ и создавать обвязки с помощью sip.


"Доступен язык программирования Python 3.3"
Отправлено gegMOPO4 , 30-Сен-12 14:13 
1. Unicode появился в Python 2.0, 12 лет назад. Поддержка его была местами лучше, местами хуже, чем в Java. С Python 3.0 стала очевидно не хуже (на Linux — лучше). С Python 3.3 — везде лучше. Прозрачно поддерживается Unicode 6.2, а Java даже Unicode 2.0 поддерживает со скрипом (и большинство разработчиков о том, как это делать, не знают).

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


"Доступен язык программирования Python 3.3"
Отправлено Xasd , 01-Окт-12 00:23 
> Слышал я, что вообще в Питоне с этими вещами было паршиво. Может в этой версии уже нет?

так говорили те люди которые (в ветке Пайтона версии 2.X) -- не могли отличить байтовую последовательность от юникодной строки.. [и таких людей судя по блогам -- очень много!! к сожелению.. не разобравшись, они начинали вопить в свои блоги]

в Python-2.X многие стандартные функции возвращали байтовые последовательности вместо юникодных строк.. и поэтому в Python-2.X [перед тем как использовать результат стандартных функций] требовалось обязательно сначало вручную сделать нечто вроде:


# при работе например с аргументами командной строки
u_my_result = my_result.decode(locale.getdefaultlocale()[1] or 'utf8')


# при работе с именами файлов файловой системы
u_my_result = my_result.decode(sys.getfilesystemencoding() or 'utf8')


# при работе с данными от файловых дескрипторов, например стандартный вход stdin
u_my_result = my_result.decode(getattr(my_fd, 'encoding', None) or 'utf-8')


# при получении/передаче данных по сети, и работе непосредственно с информацией (например загрузка содержимого файлов)
u_my_result = my_result.decode('utf-8') # мы же не хотим кракозябров на другом компе с другой локалью :)

# ...
#
# вобщем в зависимости от того что конкретно у нас такое есть -- my_result

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

это было исправлено в Python-3.X -- в Python-3.X уже сразу на выходе многих стандартных функций теперь возвращается Юникодный результат (а не байтовая последовательность).

ды и вобще в Python-3.X более чётко разграничили между собой -- байтовую последовательность и юникодную строку, и теперь их стало НЕ так просто спутать между собой в отличии от того как это было в Python-2.X.. :-)


"Доступен язык программирования Python 3.3"
Отправлено СлабыйЗаходНаХоливар , 30-Сен-12 16:58 
>Переписанный на языке Си модуль "decimal" позволил до 80 раз увеличить производительность целочисленных операций;

А нельзя вот так вот весь Питон переписать на Си?  


"Доступен язык программирования Python 3.3"
Отправлено Аноним , 30-Сен-12 17:35 
Нет.

"Доступен язык программирования Python 3.3"
Отправлено dq0s4y71 , 01-Окт-12 11:25 
Дык он на Си и написан (по крайней мере у Гвидо), толку-то...

"Доступен язык программирования Python 3.3"
Отправлено Бред , 01-Окт-12 16:54 
> А нельзя вот так вот весь Питон переписать на Си?

уже сделали 1991 году, с тех пор он на Си и написан.


"Доступен язык программирования Python 3.3"
Отправлено Аноним , 30-Сен-12 18:08 
А зачем они в 3 питоне, для print обязали ставить скобки? Новоратами 3 питона я не пользуюсь, поэтому print со скобками в питоне это бред.

"Доступен язык программирования Python 3.3"
Отправлено Kamiram , 30-Сен-12 18:43 
Для единобразия. всетаки print это функция(да. в 3 ветке совсем функцйия)

"Доступен язык программирования Python 3.3"
Отправлено Аниме , 01-Окт-12 00:27 
Причём здесь единообразие? принт для отладки, зачем скобки там где их может небыть? Ну есть же операторы. Я всегда думал что print в питоне это оператор. Вот третий питон мне всё испортил. Мне нравится питон за лаконичность, а эти все новшества только удлинняют код. Питон итак довольно мощный и совершенный, зачем его портить?

"Доступен язык программирования Python 3.3"
Отправлено marks , 01-Окт-12 09:30 
Наркоман чтоль? В 3+ print() - функцииияяяя. А ВСЕ функции пишутся со скобочкааамиии...

"Доступен язык программирования Python 3.3"
Отправлено Аноним , 06-Окт-12 18:57 
Странно что не метод, вообще странный дизайн языка получается.

"Доступен язык программирования Python 3.3"
Отправлено arisu , 01-Окт-12 08:23 
> Для единобразия.

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


"Доступен язык программирования Python 3.3"
Отправлено gegMOPO4 , 01-Окт-12 10:35 
> какая неоднозначность возникает от парзинга вызова функции с одним
> аргументом без скобок?

  f-3

Вызов функции f с аргументом -3 или результат отнимания 3 от f?

  f*a

Вызов функции с аргументами, заданными списком/кортежом a или результат умножения f на a?

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


"Доступен язык программирования Python 3.3"
Отправлено arisu , 01-Окт-12 10:50 
ок, уточню, mea culpa. с вызовом функции, аргумент которой — литерал: строка, массив, что там ещё можно однозначно отличить? конструкция:

print "abc"

по-моему, вполне однозначно понимается. если можно упростить синтаксис без особого геморроя и непоняток — отчего бы и да? удобно должно быть прежде всего человеку, а только потом машине.

опять же, никто не мешает сделать какой-нибудь флаг strict, который отрубает подобный сахар.

в конце-концов, на гвидобейсике пишут в том числе и не особо сложные скрипты, где подобное упрощение синтаксиса более чем оправдано.


"Доступен язык программирования Python 3.3"
Отправлено gegMOPO4 , 01-Окт-12 11:00 
Это всё называется не «упростить синтаксис», а значительно усложнить. Для такого языка, как Питон, на котором и простые скрипты пишутся, который и неспециалисты используют, — неприемлемо.

"Доступен язык программирования Python 3.3"
Отправлено arisu , 01-Окт-12 11:14 
с точки зрения парзера — усложнить. с точки зрения человека — упростить. как раз для неспециалистов.

"Доступен язык программирования Python 3.3"
Отправлено gegMOPO4 , 02-Окт-12 00:43 
С точки зрения пользователя — усложнить. Больше частных правил и особых случаев. Попробуйте-ка объяснить новичку, почему print 5 и print "-5" работают, а print -5 — нет. Это будет *очень* недружественный и антигуманный язык.

"Доступен язык программирования Python 3.3"
Отправлено arisu , 02-Окт-12 02:08 
(вздыхает) потому что. если запомнить *опциональное* правило «вызов функции, где первый аргумент — литерал, являющийся строкой или массивом, может писаться без скобок» — офигенно сложное правило. требует IQ>200 и эйдетической памяти.

"Доступен язык программирования Python 3.3"
Отправлено gegMOPO4 , 02-Окт-12 13:30 
Массивы отпадают. f[2] — легальная конструкция, элемент с индексом 2 списка/кортежа f. Что остаётся?

"Доступен язык программирования Python 3.3"
Отправлено arisu , 02-Окт-12 20:29 
> Массивы отпадают. f[2] — легальная конструкция, элемент с индексом 2 списка/кортежа
> f. Что остаётся?

поправить синтаксис, например. инконсистентность, значит, в использовании квадратной скобки — это ничего, это гнидаванроссум благословил? тут, значит, мы можем запомнить, а бесскобочный синтаксис — не можем.

интересно было бы посмотреть на всё это, если бы гнидаванроссум ВНИЗАПНА! решил бы чуть сменить синтаксис и сделать бесскобочные вызовы. питонисты тогда бы бегали и кричали: «хорошо, хорошо-то как! питон стал ещё проще и удобней!» а пока в питоне чего-то нет — оно завсегда плохое, сложное и не нужно.


"Доступен язык программирования Python 3.3"
Отправлено gegMOPO4 , 02-Окт-12 22:55 
Никакой инконсистентности сейчас нет.

Но вы можете форкнуть Питон (или написать с нуля) и добавить туда чего ваша душа пожелает. Хотя, конечно, ничего не делать и завистливо хаять сделанное (и хорошо сделанное!) другими некоторым нравиться больше.


"Доступен язык программирования Python 3.3"
Отправлено arisu , 02-Окт-12 22:58 
(пожимает плечами) я и так пользуюсь несколькими самодельными языками, зачем мне форкать неудачную недореплику whitespace?

p.s. и да, в некоторых из них есть «бесскобочный» синтаксис. после введения юзеры систем были довольны: скрипты писать стало проще.


"Доступен язык программирования Python 3.3"
Отправлено Аноним , 06-Окт-12 19:01 
упс а вруби все логично и print -1 => -1 и print 5-1 => 4

"Доступен язык программирования Python 3.3"
Отправлено gegMOPO4 , 07-Окт-12 01:24 
Руби — другой язык, у него другой синтаксис и другая логика (странные с точки многих других языков). Например, там можно сделать:

  print = 42
  print print -1

Но нельзя (что было бы естественно в Питоне):

  p = print
  p -1

Вот поэтому в Питоне не так, как в Руби.


"Доступен язык программирования Python 3.3"
Отправлено Аноним , 07-Окт-12 17:05 
Ну круто но логичным я бы это не назвал. Делать ссылку оператором = на функцию.

alias :p :print
p -1

разве так не лаконичней, а у вас в питоне непонятно толи print переменная толи функция


"Доступен язык программирования Python 3.3"
Отправлено demo , 01-Окт-12 14:20 
Ох,
что-то мне кажется, что Вы предлагаете ядовитый сахар. Кроме простого правила нужно будет помнить ещё правила применения правила, правила отмены правила и варианты исключения из правил.

Простое, дубовое правило (вызов функции - со скобочками!) упрощает жизнь как авторов парсера так и пользователей (особенно, если что-то идёт не так).

Мне вот не нравится ликвидация оператора print. Да, у него было своеобразно реализовано "перенаправление" вывода в произвольный поток. Да, запрет перевода строки после вывода выглядел "вызывающе хакерски". Кроме того поддержка оператора print требовала четырёх инструкций вирт. машины (PRINT_ITEM, PRINT_ITEM_TO, PRINT_NEWLINE и PRINT_NEWLINE_TO). Возможно, что была причина избавиться от всего этого. А так при наличии sys.stdout.write() и функция print не очень-то нужна.


"Доступен язык программирования Python 3.3"
Отправлено arisu , 01-Окт-12 14:33 
> что-то мне кажется, что Вы предлагаете ядовитый сахар. Кроме простого правила нужно
> будет помнить ещё правила применения правила, правила отмены правила и варианты
> исключения из правил.

зачем? я же не предлагаю скобки аннигилировать. лень помнить — можно просто ставить скобки и не заморачиваться, дел-то.


"Доступен язык программирования Python 3.3"
Отправлено demo , 01-Окт-12 14:35 
> ...какая неоднозначность возникает от парзинга вызова функции с одним
> аргументом без скобок?

вот "sin x" - это хорошо и понятно.
а вот "sin 2*x" (тоже функция с одним аргументом без скобок) уже не хорошо и не понятно - это "(sin 2)*x" или "sin(2*x)"?

Кроме того в случае python есть ещё одно усложнение - это мы знаем, что традиционный sin это всегда функция с одним аргументом. А компилятор python-а, бедняжечка, этого не знает.


"Доступен язык программирования Python 3.3"
Отправлено arisu , 01-Окт-12 15:57 
я же уточнил, какие литералы допускать.

> Кроме того в случае python есть ещё одно усложнение — это мы
> знаем, что традиционный sin это всегда функция с одним аргументом. А
> компилятор python-а, бедняжечка, этого не знает.

а какая парзеру разница? есть запятая на месте терма? следующий параметр. нет запятой? конец оператора.


"Доступен язык программирования Python 3.3"
Отправлено Аноним , 01-Окт-12 19:08 
>> ...какая неоднозначность возникает от парзинга вызова функции с одним
>> аргументом без скобок?
> вот "sin x" - это хорошо и понятно.
> а вот "sin 2*x" (тоже функция с одним аргументом без скобок) уже
> не хорошо и не понятно - это "(sin 2)*x" или "sin(2*x)"?

Если скобки строго заменять на пробелы, то "sin 2*x" эквивалентно "sin (2*x)", а вот "sin 2 *x" уже "(sin(2)*x)".
Опять же, у Руби такое используется - и ничего, компилятор-бедняжечка не путается



"Доступен язык программирования Python 3.3"
Отправлено arisu , 02-Окт-12 01:31 
> Если скобки строго заменять на пробелы, то «sin 2*x» эквивалентно «sin (2*x)»,
> а вот «sin 2 *x» уже «(sin(2)*x)».

в принципе, фраза «sin 2*x» человеком понимается достаточно однозначно, по-моему. а к тому, что пробелы — не просто разделители, а чуть ли не токены, питонистам не привыкать.


"Доступен язык программирования Python 3.3"
Отправлено angra , 03-Окт-12 00:08 
Свободно опускаемые скобки и куча других прелестей для опытных программистов - это perl. Питон он для другой ЦА, гибкость противоречит его философии, там шкурку с кошки можно снять строго одним образом.

"Доступен язык программирования Python 3.3"
Отправлено Аноним , 06-Окт-12 19:05 
> Свободно опускаемые скобки и куча других прелестей для опытных программистов - это
> perl. Питон он для другой ЦА, гибкость противоречит его философии, там
> шкурку с кошки можно снять строго одним образом.

Ну у этого есть один плюс. Поддерживать код проще. И один минус. Не всем это по душе.


"Доступен язык программирования Python 3.3"
Отправлено anonymous , 30-Сен-12 22:09 
>Поддержка виртуальных окружений

Да здравствует version hell.


"Доступен язык программирования Python 3.3"
Отправлено bav , 30-Сен-12 23:49 
> Да здравствует version hell

Вы о чем, сударь? venv это хорошо и прекрасно.


"Доступен язык программирования Python 3.3"
Отправлено Аноним , 01-Окт-12 02:27 
>> Да здравствует version hell
> Вы о чем, сударь? venv это хорошо и прекрасно.

оно не втыкнуло о чём этот самый venv эбаут :)


"Доступен язык программирования Python 3.3"
Отправлено Аноним , 06-Окт-12 19:08 
>> Да здравствует version hell
> Вы о чем, сударь? venv это хорошо и прекрасно.

ага придумали Bundler из мира ruby. И да это прекрасно, можно искренне поздравить питонистов, теперь и им будет удобно.


"Доступен язык программирования Python 3.3"
Отправлено Xasd , 01-Окт-12 18:15 
>> Поддержка виртуальных окружений
> Да здравствует version hell.

наверно Вы имели ввиду -- virtual-hell ! :-D

но правда мне сложно представить что это может быть такое

# p.s.: по крайней мере -- version-hell и virtual-env -- вещи вообще взаимоисключающие :)


"Доступен язык программирования Python 3.3"
Отправлено GoTLiuM , 30-Сен-12 23:44 
Изменения радуют:)