<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Стиль удава: компиляция на лету</title>
	<atom:link href="http://www.developers.org.ua/archives/mlk/2008/07/23/python-kung-fu-p1-runtime-compilation/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.developers.org.ua/archives/mlk/2008/07/23/python-kung-fu-p1-runtime-compilation/</link>
	<description>сообщество программистов</description>
	<lastBuildDate>Fri, 19 Mar 2010 19:57:08 +0200</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Виталий</title>
		<link>http://www.developers.org.ua/archives/mlk/2008/07/23/python-kung-fu-p1-runtime-compilation/#comment-85949</link>
		<dc:creator>Виталий</dc:creator>
		<pubDate>Mon, 28 Dec 2009 05:25:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.developers.org.ua/index.php?p=1402#comment-85949</guid>
		<description>@Сергей
Спасибо за такой быстрый ответ. Не ожидал даже.
&lt;blockquote&gt;...можно и своими силами сделать...&lt;/blockquote&gt;
Поверьте, меньше всего в жизни я надеюсь на халяву, поэтому сразу же заглянул в код.
Проблема в том, что я хочу использовать его не на CPython, а на Symbian Python(это портированный Python на платформу S60 компании Nokia, он же PyS60). Наверное я законченный гик :).
Текущая версия 1.4.5 базируется как раз на Python 2.2, но в &quot;батарейки&quot; не включены многие модули из стандартной библиотеки(в целях экономии памяти). Поэтому когда запустить не удалось,  я поизучал немного код и решил, что либо дело в отсутствии необходимых модулей, либо в несовместимости версий питона.
P.S.
Кстати, есть ещё и пока несколько экспериментальная версия PyS60 2.0. Она базируется уже на CPython 2.5, и подошла бы идеально.
Проблема в том, что устанавливается она хорошо, а запустить консоль не удается.
А без консоли проку никакого нет от неё.
Хотя сейчас у меня мелькнула одна идея, посмотрим выгорит ли она.</description>
		<content:encoded><![CDATA[<p>@Сергей<br />
Спасибо за такой быстрый ответ. Не ожидал даже.</p>
<blockquote><p>&#8230;можно и своими силами сделать&#8230;</p></blockquote>
<p>Поверьте, меньше всего в жизни я надеюсь на халяву, поэтому сразу же заглянул в код.<br />
Проблема в том, что я хочу использовать его не на CPython, а на Symbian Python(это портированный Python на платформу S60 компании Nokia, он же PyS60). Наверное я законченный гик <img src='http://www.developers.org.ua/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .<br />
Текущая версия 1.4.5 базируется как раз на Python 2.2, но в &#8220;батарейки&#8221; не включены многие модули из стандартной библиотеки(в целях экономии памяти). Поэтому когда запустить не удалось,  я поизучал немного код и решил, что либо дело в отсутствии необходимых модулей, либо в несовместимости версий питона.<br />
P.S.<br />
Кстати, есть ещё и пока несколько экспериментальная версия PyS60 2.0. Она базируется уже на CPython 2.5, и подошла бы идеально.<br />
Проблема в том, что устанавливается она хорошо, а запустить консоль не удается.<br />
А без консоли проку никакого нет от неё.<br />
Хотя сейчас у меня мелькнула одна идея, посмотрим выгорит ли она.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Сергей Щетинин</title>
		<link>http://www.developers.org.ua/archives/mlk/2008/07/23/python-kung-fu-p1-runtime-compilation/#comment-85947</link>
		<dc:creator>Сергей Щетинин</dc:creator>
		<pubDate>Mon, 28 Dec 2009 02:49:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.developers.org.ua/index.php?p=1402#comment-85947</guid>
		<description>Для 2.3 работает, для 2.2 вроде нет. Сужу по доступным пакетам: http://pypi.python.org/pypi/BytecodeAssembler
Если действительно нужно для 2.2, то можно и своими силами сделать.

&lt;blockquote&gt;И как понимать слова “… несложной умеренно сложной …”? &lt;/blockquote&gt;
В той фразе &quot;несложной&quot; вычеркнуто. Имеется в виду что &quot;несложной&quot; её хотелось бы назвать, но это не было бы всей правдой -- она не сложная, но опкодов уж очень много.</description>
		<content:encoded><![CDATA[<p>Для 2.3 работает, для 2.2 вроде нет. Сужу по доступным пакетам: <a href="http://pypi.python.org/pypi/BytecodeAssembler" rel="nofollow">http://pypi.python.org/pypi/BytecodeAssembler</a><br />
Если действительно нужно для 2.2, то можно и своими силами сделать.</p>
<blockquote><p>И как понимать слова “… несложной умеренно сложной …”? </p></blockquote>
<p>В той фразе &#8220;несложной&#8221; вычеркнуто. Имеется в виду что &#8220;несложной&#8221; её хотелось бы назвать, но это не было бы всей правдой &#8212; она не сложная, но опкодов уж очень много.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Виталий</title>
		<link>http://www.developers.org.ua/archives/mlk/2008/07/23/python-kung-fu-p1-runtime-compilation/#comment-85946</link>
		<dc:creator>Виталий</dc:creator>
		<pubDate>Mon, 28 Dec 2009 02:40:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.developers.org.ua/index.php?p=1402#comment-85946</guid>
		<description>А нет ли BytecodeAssembler для Python 2.2(2.3)? Это критично. И как понимать слова &quot;... несложной умеренно сложной ...&quot;? :)</description>
		<content:encoded><![CDATA[<p>А нет ли BytecodeAssembler для Python 2.2(2.3)? Это критично. И как понимать слова &#8220;&#8230; несложной умеренно сложной &#8230;&#8221;? <img src='http://www.developers.org.ua/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Сергей Щетинин</title>
		<link>http://www.developers.org.ua/archives/mlk/2008/07/23/python-kung-fu-p1-runtime-compilation/#comment-42718</link>
		<dc:creator>Сергей Щетинин</dc:creator>
		<pubDate>Tue, 11 Nov 2008 12:18:04 +0000</pubDate>
		<guid isPermaLink="false">http://www.developers.org.ua/index.php?p=1402#comment-42718</guid>
		<description>Точнее &lt;a href=&quot;http://feeds.feedburner.com/maluke/self&quot; rel=&quot;nofollow&quot;&gt;будет, но не здесь&lt;/a&gt;.</description>
		<content:encoded><![CDATA[<p>Точнее <a href="http://feeds.feedburner.com/maluke/self" rel="nofollow">будет, но не здесь</a>.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Всеволод Соловьёв</title>
		<link>http://www.developers.org.ua/archives/mlk/2008/07/23/python-kung-fu-p1-runtime-compilation/#comment-42714</link>
		<dc:creator>Всеволод Соловьёв</dc:creator>
		<pubDate>Tue, 11 Nov 2008 12:14:30 +0000</pubDate>
		<guid isPermaLink="false">http://www.developers.org.ua/index.php?p=1402#comment-42714</guid>
		<description>&lt;a href=&quot;http://www.developers.org.ua/forum/topic/104#post-859&quot; rel=&quot;nofollow&quot;&gt;Не будет.&lt;/a&gt;</description>
		<content:encoded><![CDATA[<p><a href="http://www.developers.org.ua/forum/topic/104#post-859" rel="nofollow">Не будет.</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: COTOHA</title>
		<link>http://www.developers.org.ua/archives/mlk/2008/07/23/python-kung-fu-p1-runtime-compilation/#comment-42705</link>
		<dc:creator>COTOHA</dc:creator>
		<pubDate>Tue, 11 Nov 2008 11:43:45 +0000</pubDate>
		<guid isPermaLink="false">http://www.developers.org.ua/index.php?p=1402#comment-42705</guid>
		<description>&lt;blockquote&gt;Это первая статья серии посвященной Кунг-фу Python. &lt;/blockquote&gt;а продолжение будет?</description>
		<content:encoded><![CDATA[<blockquote><p>Это первая статья серии посвященной Кунг-фу Python. </p></blockquote>
<p>а продолжение будет?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Щетинин Сергей</title>
		<link>http://www.developers.org.ua/archives/mlk/2008/07/23/python-kung-fu-p1-runtime-compilation/#comment-20936</link>
		<dc:creator>Щетинин Сергей</dc:creator>
		<pubDate>Wed, 30 Jul 2008 05:23:59 +0000</pubDate>
		<guid isPermaLink="false">http://www.developers.org.ua/index.php?p=1402#comment-20936</guid>
		<description>@Андрей
Я считаю что тогда, когда это действительно компиляция на лету. Например если по ходу выполнения программы добавляются или меняются какие-то структуры. Когда выигрыш идет именно за счет того что некая логика вычисляется лишь однажды. Кстати, в таких случаях перечисленные альтернативы мало чего могут сделать. К тому же найдется немало случаев когда оптимизируемый код действительно будет меняться и расширяться в дальнейшей разработке, тут снова альтернативы могут оказаться слишком тяжеловесными если такого кода реально много. Есть кстати интересная штука &lt;a href=&quot;http://wiki.python.org/moin/weave&quot; rel=&quot;nofollow&quot;&gt;weave&lt;/a&gt; где-то на стыке обоих вариантов. Ну и конечно изначально должна быть необходимость, то есть что-то медленное.

Вообще BytecodeAssembler используется при компиляции набора правил в PEAK-Rules, а я его пользовал в своих экспериментах с адаптацией, например если позволить адаптерам комбинироваться не только в цепочки но и в деревья или вообще произвольные графы, то компилировать их очень на руку. Но на самом деле мне это понравилось как еще один подход, ведь вместо питоновского асма можно генерировать например DSP в машинном коде.</description>
		<content:encoded><![CDATA[<p>@Андрей<br />
Я считаю что тогда, когда это действительно компиляция на лету. Например если по ходу выполнения программы добавляются или меняются какие-то структуры. Когда выигрыш идет именно за счет того что некая логика вычисляется лишь однажды. Кстати, в таких случаях перечисленные альтернативы мало чего могут сделать. К тому же найдется немало случаев когда оптимизируемый код действительно будет меняться и расширяться в дальнейшей разработке, тут снова альтернативы могут оказаться слишком тяжеловесными если такого кода реально много. Есть кстати интересная штука <a href="http://wiki.python.org/moin/weave" rel="nofollow">weave</a> где-то на стыке обоих вариантов. Ну и конечно изначально должна быть необходимость, то есть что-то медленное.</p>
<p>Вообще BytecodeAssembler используется при компиляции набора правил в PEAK-Rules, а я его пользовал в своих экспериментах с адаптацией, например если позволить адаптерам комбинироваться не только в цепочки но и в деревья или вообще произвольные графы, то компилировать их очень на руку. Но на самом деле мне это понравилось как еще один подход, ведь вместо питоновского асма можно генерировать например DSP в машинном коде.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Андрей Светлов</title>
		<link>http://www.developers.org.ua/archives/mlk/2008/07/23/python-kung-fu-p1-runtime-compilation/#comment-20859</link>
		<dc:creator>Андрей Светлов</dc:creator>
		<pubDate>Tue, 29 Jul 2008 18:02:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.developers.org.ua/index.php?p=1402#comment-20859</guid>
		<description>Поразмыслил. Использование питоновского асма - &quot;дело филигранной техники&quot; (c) bialix.
Поэтому красиво уже само по себе.
Но возникает вопрос - когда нужно применять, а когда - не стоит.
Способов ускорить работу кода много: psyco, pyrex, c-extesion и boost.python, наконец.
С перечисленным работал и примерно знаю, чего ожидать.
Какие показания и противопоказания для описанного в статье подхода?
Т.е. как быстро понять, что оптимизировать нужно именно в сторону асма?</description>
		<content:encoded><![CDATA[<p>Поразмыслил. Использование питоновского асма &#8211; &#8220;дело филигранной техники&#8221; (c) bialix.<br />
Поэтому красиво уже само по себе.<br />
Но возникает вопрос &#8211; когда нужно применять, а когда &#8211; не стоит.<br />
Способов ускорить работу кода много: psyco, pyrex, c-extesion и boost.python, наконец.<br />
С перечисленным работал и примерно знаю, чего ожидать.<br />
Какие показания и противопоказания для описанного в статье подхода?<br />
Т.е. как быстро понять, что оптимизировать нужно именно в сторону асма?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Франковский Богдан</title>
		<link>http://www.developers.org.ua/archives/mlk/2008/07/23/python-kung-fu-p1-runtime-compilation/#comment-20497</link>
		<dc:creator>Франковский Богдан</dc:creator>
		<pubDate>Mon, 28 Jul 2008 12:03:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.developers.org.ua/index.php?p=1402#comment-20497</guid>
		<description>Спасибо, было познавательно.</description>
		<content:encoded><![CDATA[<p>Спасибо, было познавательно.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Щетинин Сергей</title>
		<link>http://www.developers.org.ua/archives/mlk/2008/07/23/python-kung-fu-p1-runtime-compilation/#comment-19526</link>
		<dc:creator>Щетинин Сергей</dc:creator>
		<pubDate>Fri, 25 Jul 2008 23:34:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.developers.org.ua/index.php?p=1402#comment-19526</guid>
		<description>На здоровье. Сам найдешь время написать что нибудь? Я б тоже с удовольствием почитал. =)</description>
		<content:encoded><![CDATA[<p>На здоровье. Сам найдешь время написать что нибудь? Я б тоже с удовольствием почитал. =)</p>
]]></content:encoded>
	</item>
</channel>
</rss>
