LINUX.ORG.RU

Обзор новых возможностей в Python 2.6 и 3.0

 ,


0

0

В сентябре 2008 года должны выйти сразу две версии языка Python — 2.6 и 3.0. Версия 3.0 потеряет обратную совместимость с линейкой 2.x. Облегчить переход на новую ветку должна версия 2.6, в которой будут реализованы основные возможности из Python 3.0, но в которой еще сохранится обратная совместимость с предыдущими версиями. Таким образом, в версии 2.6 уже можно будет пользоваться многими возможностями Python 3.0, но старый код будет продолжать работать, и будет время для перехода на Python 3.0.

В этой статье мы с вами рассмотрим основные изменения, которые произошли в Python 2.6 и 3.0 по сравнению с Python 2.5. Для запуска примеров использовались первые бета-версии Python 2.6 и 3.0, поэтому к выходу финальной версии еще может что-то измениться.

>>> Подробности



Проверено: Shaman007 ()
Ответ на: комментарий от anonymous

И каким образом теперь отнести многословность (кстати - аргументируй) к рельсам и лямбдам? Отскакиваешь, да? :)

anonymous
()
Ответ на: комментарий от anonymous

>И каким образом теперь отнести многословность (кстати - аргументируй) к рельсам и лямбдам? Отскакиваешь, да? :)

Человек может одновременно держать в памяти 7+/-2 объекта в памяти, было бы расточительно тратить память на лишние объекты. Меньше быть тоже не должно - пример такого подхода perl, что и принесло ему славу write-only языка (а совсем не принцип "there's more than one way to do it"). Универсальный способ сделать код понятнее за счет использования только нужных абстракций - DSL. И руби и питон в общем-то сливают в этом отношении, так что языки в общем-то отстойные. Я хоть и пишу на руби, но язык в общем быдловский, хотя менее чем питон. Логичный подход для быдло-языка - пичкать его наиболее более менее универсальными решениями вроде лямбда, расширения методов и прочее.

Насчет аргументации как именно лямбда помогает в восприятии:

class AddSystemSettings < ActiveRecord::Migration
..def self.up
....create_table :system_settings do |t|
......t.string :name
......t.string :label
......t.text :value
......t.string :type
......t.integer :position
.... end

....SystemSetting.create :name => "notice", :label => "Use notice?", :value => 1
..end

..def self.down
....drop_table :system_settings
..end
end

Только не надо кричать, что это наоборот непонятно и тп. Непонятной такая запись может быть только для тех кто не знает руби.

anonymous
()
Ответ на: комментарий от anonymous

Быдлятские не языки, а люди. Если вы пишите на этом языке и он вам кажется таковым, то дело в вас:)

anonymous
()
Ответ на: комментарий от anonymous

> Человек может одновременно держать в памяти

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

anonymous
()
Ответ на: комментарий от anonymous

>Быдлятские не языки, а люди. Если вы пишите на этом языке и он вам кажется таковым, то дело в вас:)

Ошибаешься:) Быдло-кодер это тот, который пишет на быдлятском языке и свято верит что он лучший. Не согласен - докажи обратное. Не быдло языки это в основном либо академические, либо богом забытые. Слишком уж много придурков гордо именуют себя программистами, что бы популярными стали "правильные" языки.

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

anonymous
()
Ответ на: комментарий от anonymous

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

Согласен, такие вещи в одном посте не распишешь по-хорошему.

anonymous
()
Ответ на: комментарий от anonymous

> лисп + смолток

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

anonymous
()
Ответ на: комментарий от anonymous

>поэтому руби и не работает, как и поделки на нем.

Ты потому о софте на Ruby, Tcl, Erlang и не знаешь ничего, потому как поделки на нём не пишут. Попсовые поделки пишут на Python, VB, Java

Led ★★★☆☆
()
Ответ на: комментарий от Led

> Ты потому о софте на Ruby, Tcl, Erlang и не знаешь ничего, потому как поделки на нём не пишут.

О да, тайные гении лабают на нем гениальные проги и никому их не показывают.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

>О да, тайные гении лабают на нем гениальные проги и никому их не показывают.

Не знаю, гениальные или нет. не знаю как назвать то, чем ты пользуешся повседневно, даже не зная об этом и не замечая. но если они вдруг исчезнут - почувствуешь, мягко говоря, дискомфорт:)

Led ★★★☆☆
()
Ответ на: комментарий от Led

> не знаю как назвать то, чем ты пользуешся повседневно

Приведи примеры.

> но если они вдруг исчезнут - почувствуешь, мягко говоря, дискомфорт:)

И что? Ты сказал, что на Tcl, Ruby и Erlang не пишут "поделок". Но даже широко используемая программа может быть кривой донельзя поделкой.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

>Ты сказал, что на Tcl, Ruby и Erlang не пишут "поделок".

Я не совсем так сказал. Можно, конечно... если постараться:)

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

Ну и зачем ты повторяешь мои слова? изменив только "попсовые" на синоним "широко используемая"?:)

Led ★★★☆☆
()
Ответ на: комментарий от anonymous

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

anonymous
()
Ответ на: комментарий от Led

Те люди, которые полагают, что Django "слизан" с RoR, являются клиническими дебилами, так как 1) Django был объявлен как готовое приложение практически одновременно с первыми релизами RoR; 2) эти приложения реализуют различные паттерны как в исходной структуре приложения, так и в его частях (ORM, система шаблонов, работа с объектами запроса и ответа и т.д.). Субъективно, RoR и околоRoR-е пространство производят ощущение свалки, особенно если посмотреть исходный код плагинов сообщества. Со стороны Django все гораздо аккуратнее, лучше документировано и организовано.

Также совершенными клиническими дибилами являются те, кто сравнивает tcl и Python и пытаются найти "10 отличий" и установить превосходство. Тот, кто МНОГО писал на tcl, а также МНОГО писал на Python (т.е. действительно ОПЫТНЫЙ человек), НИКОГДА не будет проводить таких сравнений. Tcl отличен в "сделай по-быстрому чтобы эта хрень начала работать", особенно в скриптовании сетевых дел под *nix. Но сравнивать его с Python...

Забавно, что рубисты вспоминают Erlang. Забавно и то, что на Ruby не получится реализовать такую же модель вычислений, как в Erlang. Напротив, в Python многие характерные особенности Erlang реализуемы. А насчет поделок "попсовых"... Конечно, на Erlang работают некоторые телекоммуникационные системы , на Tcl тоже наследия хватает, и достаточно массивного (рамарка: но, бл..ь, как с ним фигово разгребаться!!! уровни интерпретатора... ох... Хотя работает и работает порой отлично, но это не заслуга языка, уж поверьте). На Ruby, уж извините, но НЕТ(!) такого. Напротив, на Python, Java работают сложные, высоконагруженные приложения в самых разных отраслях промышленности и бизнеса. ( И на VB тоже, кстати, только причина такого применения у этого языка несколько отличная от первых двух (: ).

Безусловно, для общего развития имеет смысл посмотреть Ruby, но предполагать его, как замену Python - это даже не смешно, это просто глупо. По мощности языки практически равны (хотя в Python многие вещи реализованы аккуратнее, чтобы там рубисты не кричали про блоки и т.д.... блоков вы просто не видели, маленькие засранцы (: ), но за Python стоят достаточно быстрый интерпретатор, отличные реализации (сpython, stackless python), проверенная библиотека, биндинги ко всему на свете... Так что хватит пороть чушь.

anonymous
()

Кстати на питоне написан blender - аналог 3D Studio Max

rialne
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.