<?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: Alchemy, ActionScript and the ASC</title>
	<atom:link href="http://blog.joa-ebert.com/2008/12/01/alchemy-actionscript-asc/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.joa-ebert.com/2008/12/01/alchemy-actionscript-asc/</link>
	<description>Actionscript3, Flash, Java, C#, C++, Algorithms &#38; Imageprocessing</description>
	<lastBuildDate>Mon, 15 Mar 2010 02:19:18 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: bongiovi&#8217;s blog &#187; Adobe 鍊金術 Alchemy 效能問題</title>
		<link>http://blog.joa-ebert.com/2008/12/01/alchemy-actionscript-asc/comment-page-1/#comment-184958</link>
		<dc:creator>bongiovi&#8217;s blog &#187; Adobe 鍊金術 Alchemy 效能問題</dc:creator>
		<pubDate>Tue, 02 Feb 2010 13:44:01 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joa-ebert.com/?p=265#comment-184958</guid>
		<description>[...] 在Joa Ebert的BLOG上面找到這篇文章，還有裡面鏈結到的另一篇文章 [...]</description>
		<content:encoded><![CDATA[<p>[...] 在Joa Ebert的BLOG上面找到這篇文章，還有裡面鏈結到的另一篇文章 [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ozgur uksal</title>
		<link>http://blog.joa-ebert.com/2008/12/01/alchemy-actionscript-asc/comment-page-1/#comment-166714</link>
		<dc:creator>ozgur uksal</dc:creator>
		<pubDate>Thu, 02 Apr 2009 15:47:35 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joa-ebert.com/?p=265#comment-166714</guid>
		<description>you wrote: &quot;Basically Ralph Hauwert was reading my mind with this post.&quot; Joa, you should check Ralph Hauwert&#039;s new post : http://www.unitzeroone.com/blog/2009/03/18/flash-10-massive-amounts-of-3d-particles-with-alchemy-source-included/

sincerely,</description>
		<content:encoded><![CDATA[<p>you wrote: &#8220;Basically Ralph Hauwert was reading my mind with this post.&#8221; Joa, you should check Ralph Hauwert&#8217;s new post : <a href="http://www.unitzeroone.com/blog/2009/03/18/flash-10-massive-amounts-of-3d-particles-with-alchemy-source-included/" rel="nofollow">http://www.unitzeroone.com/blog/2009/03/18/flash-10-massive-amounts-of-3d-particles-with-alchemy-source-included/</a></p>
<p>sincerely,</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: joa</title>
		<link>http://blog.joa-ebert.com/2008/12/01/alchemy-actionscript-asc/comment-page-1/#comment-164180</link>
		<dc:creator>joa</dc:creator>
		<pubDate>Mon, 29 Dec 2008 11:31:55 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joa-ebert.com/?p=265#comment-164180</guid>
		<description>Please read the post before making any comments. It seems like you did not understand at all what I am talking about.

Posting examples makes no sense and I will not answer to this any longer. If I say that the Alternativa bunker demo is running in fullscreen with way much higher quality it makes also no sense because that is not the whole point of this post. Sorry.</description>
		<content:encoded><![CDATA[<p>Please read the post before making any comments. It seems like you did not understand at all what I am talking about.</p>
<p>Posting examples makes no sense and I will not answer to this any longer. If I say that the Alternativa bunker demo is running in fullscreen with way much higher quality it makes also no sense because that is not the whole point of this post. Sorry.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ozgur uksal</title>
		<link>http://blog.joa-ebert.com/2008/12/01/alchemy-actionscript-asc/comment-page-1/#comment-164167</link>
		<dc:creator>ozgur uksal</dc:creator>
		<pubDate>Sun, 28 Dec 2008 19:44:22 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joa-ebert.com/?p=265#comment-164167</guid>
		<description>The answer is clear: check the following link, and play doom in your browser and see the performance: 
http://www.peterelst.com/blog/2008/12/18/porting-doom-to-flash-interview-with-mike-welsh/</description>
		<content:encoded><![CDATA[<p>The answer is clear: check the following link, and play doom in your browser and see the performance:<br />
<a href="http://www.peterelst.com/blog/2008/12/18/porting-doom-to-flash-interview-with-mike-welsh/" rel="nofollow">http://www.peterelst.com/blog/2008/12/18/porting-doom-to-flash-interview-with-mike-welsh/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: joa</title>
		<link>http://blog.joa-ebert.com/2008/12/01/alchemy-actionscript-asc/comment-page-1/#comment-164109</link>
		<dc:creator>joa</dc:creator>
		<pubDate>Wed, 24 Dec 2008 20:34:35 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joa-ebert.com/?p=265#comment-164109</guid>
		<description>But you do understand that the C code is compiled to ABC which runs in the AVM2 and therefore all your unmanaged memory cocd has to be wrapped to work in a virtual machine with managed memory. 

I wonder how you want to explain to me now why this should be faster?!</description>
		<content:encoded><![CDATA[<p>But you do understand that the C code is compiled to ABC which runs in the AVM2 and therefore all your unmanaged memory cocd has to be wrapped to work in a virtual machine with managed memory. </p>
<p>I wonder how you want to explain to me now why this should be faster?!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ozgur uksal</title>
		<link>http://blog.joa-ebert.com/2008/12/01/alchemy-actionscript-asc/comment-page-1/#comment-164063</link>
		<dc:creator>ozgur uksal</dc:creator>
		<pubDate>Mon, 22 Dec 2008 17:16:59 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joa-ebert.com/?p=265#comment-164063</guid>
		<description>I have strong background in C, and Java, Actionscript. Therefore, I can&#039;t be agree with the points you make. You asked: &quot;So why is Alchemy faster than using plain ActionScript — or is that true at all? &quot; It is faster because you can organize and manage your memory by yourself, as a result, you can implement better algorithms and you can obtain better performance. These are known facts among C programmers. There are many open source projects implemented in C/C++. Actionscript developers will be able to access these codes. Alchemy rocks!!!</description>
		<content:encoded><![CDATA[<p>I have strong background in C, and Java, Actionscript. Therefore, I can&#8217;t be agree with the points you make. You asked: &#8220;So why is Alchemy faster than using plain ActionScript — or is that true at all? &#8221; It is faster because you can organize and manage your memory by yourself, as a result, you can implement better algorithms and you can obtain better performance. These are known facts among C programmers. There are many open source projects implemented in C/C++. Actionscript developers will be able to access these codes. Alchemy rocks!!!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: zproxy</title>
		<link>http://blog.joa-ebert.com/2008/12/01/alchemy-actionscript-asc/comment-page-1/#comment-163800</link>
		<dc:creator>zproxy</dc:creator>
		<pubDate>Fri, 12 Dec 2008 18:11:30 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joa-ebert.com/?p=265#comment-163800</guid>
		<description>my jsc compiler will let you write your flash application in c# and compile it to actionscript source code. Then you would need to use flex compiler to get the actual swf file.

:) try it</description>
		<content:encoded><![CDATA[<p>my jsc compiler will let you write your flash application in c# and compile it to actionscript source code. Then you would need to use flex compiler to get the actual swf file.</p>
<p>:) try it</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: joa</title>
		<link>http://blog.joa-ebert.com/2008/12/01/alchemy-actionscript-asc/comment-page-1/#comment-163628</link>
		<dc:creator>joa</dc:creator>
		<pubDate>Sun, 07 Dec 2008 16:48:21 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joa-ebert.com/?p=265#comment-163628</guid>
		<description>There is already a CIL-&gt;ABC converter at http://jsc.sourceforge.net/ but I did not take a look at it yet.

By the way you can still use AS3C as a free dasm. But it does not work with haXe generated SWF files.</description>
		<content:encoded><![CDATA[<p>There is already a CIL->ABC converter at <a href="http://jsc.sourceforge.net/" rel="nofollow">http://jsc.sourceforge.net/</a> but I did not take a look at it yet.</p>
<p>By the way you can still use AS3C as a free dasm. But it does not work with haXe generated SWF files.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Xavier</title>
		<link>http://blog.joa-ebert.com/2008/12/01/alchemy-actionscript-asc/comment-page-1/#comment-163622</link>
		<dc:creator>Xavier</dc:creator>
		<pubDate>Sun, 07 Dec 2008 15:20:37 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joa-ebert.com/?p=265#comment-163622</guid>
		<description>I think it would be pretty nice to have a CIL =&gt; ABC converter, so we can convert any .NET binary to a SWF. Because the CLS is much closer to AS3 than C/C++, this converter would have to put less additionnal code in the swf to have an equivalent SWF binary. It would not be perfect as is (for example, the binaries are not inlined, since the inlining work is done by the .NET jitter) but I guess someone doing such compiler could add some compiler magic.

Also, I was looking at this new memory access bytecode stuff, and saw that they were actually available through a ByteArray exposed by ApplicationDomain.domainMemory. Well, that&#039;s what the documentation says and I did not take the time to benchmark it or look at the generated IL when it&#039;s used(do you have any good IL reader tool to advice btw ?). It would be interesting to compare this ByteArray access times against Haxe&#039;s Memory class ones.

Anyway, I&#039;ll definitely look into doing that CIL-SWF converter..</description>
		<content:encoded><![CDATA[<p>I think it would be pretty nice to have a CIL =&gt; ABC converter, so we can convert any .NET binary to a SWF. Because the CLS is much closer to AS3 than C/C++, this converter would have to put less additionnal code in the swf to have an equivalent SWF binary. It would not be perfect as is (for example, the binaries are not inlined, since the inlining work is done by the .NET jitter) but I guess someone doing such compiler could add some compiler magic.</p>
<p>Also, I was looking at this new memory access bytecode stuff, and saw that they were actually available through a ByteArray exposed by ApplicationDomain.domainMemory. Well, that&#8217;s what the documentation says and I did not take the time to benchmark it or look at the generated IL when it&#8217;s used(do you have any good IL reader tool to advice btw ?). It would be interesting to compare this ByteArray access times against Haxe&#8217;s Memory class ones.</p>
<p>Anyway, I&#8217;ll definitely look into doing that CIL-SWF converter..</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: joa</title>
		<link>http://blog.joa-ebert.com/2008/12/01/alchemy-actionscript-asc/comment-page-1/#comment-163621</link>
		<dc:creator>joa</dc:creator>
		<pubDate>Sun, 07 Dec 2008 12:16:04 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joa-ebert.com/?p=265#comment-163621</guid>
		<description>You are right but as I said the AVM2 JIT is doing more than the compiler. The only problem is verifying what the JIT is doing.

I do not know if you have made your own experiences. But in the comment above I said that I do not understand a lot of stuff the AVM2 is doing or why it behaves slow in some ways (static vs. instance).</description>
		<content:encoded><![CDATA[<p>You are right but as I said the AVM2 JIT is doing more than the compiler. The only problem is verifying what the JIT is doing.</p>
<p>I do not know if you have made your own experiences. But in the comment above I said that I do not understand a lot of stuff the AVM2 is doing or why it behaves slow in some ways (static vs. instance).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nicolas</title>
		<link>http://blog.joa-ebert.com/2008/12/01/alchemy-actionscript-asc/comment-page-1/#comment-163618</link>
		<dc:creator>Nicolas</dc:creator>
		<pubDate>Sun, 07 Dec 2008 10:43:27 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joa-ebert.com/?p=265#comment-163618</guid>
		<description>Hi Joa,

You&#039;re right to complain about ASC code output, since it is not very good. But keep in mind that some optimizations such as constant expression propagation and dead code elimination are performed at runtime by the AVM2 JIT, since the SSA representation is much more easy to optimize than the AVM2 bytecode.</description>
		<content:encoded><![CDATA[<p>Hi Joa,</p>
<p>You&#8217;re right to complain about ASC code output, since it is not very good. But keep in mind that some optimizations such as constant expression propagation and dead code elimination are performed at runtime by the AVM2 JIT, since the SSA representation is much more easy to optimize than the AVM2 bytecode.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: localToGlobal &#187; Blog Archive &#187; news review -&#62; 49th week of 2008</title>
		<link>http://blog.joa-ebert.com/2008/12/01/alchemy-actionscript-asc/comment-page-1/#comment-163560</link>
		<dc:creator>localToGlobal &#187; Blog Archive &#187; news review -&#62; 49th week of 2008</dc:creator>
		<pubDate>Fri, 05 Dec 2008 15:26:18 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joa-ebert.com/?p=265#comment-163560</guid>
		<description>[...] &gt; Alchemy, ActionScript and the ASC at blog.joa-ebert.com - Blog of Joa Ebert [...]</description>
		<content:encoded><![CDATA[<p>[...] &gt; Alchemy, ActionScript and the ASC at blog.joa-ebert.com &#8211; Blog of Joa Ebert [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: joa</title>
		<link>http://blog.joa-ebert.com/2008/12/01/alchemy-actionscript-asc/comment-page-1/#comment-163555</link>
		<dc:creator>joa</dc:creator>
		<pubDate>Fri, 05 Dec 2008 12:21:22 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joa-ebert.com/?p=265#comment-163555</guid>
		<description>I do not really get your point. I mean let&#039;s face it. The key is that we want to write nice readable OOP code which is still performant. And if I write this
&lt;code&gt;public function get x(): Number { return _x; }&lt;/code&gt; a compiler or the runtime has to be smart enough to inline this call instead of calling a method.

Unfortunately I still have my problems with the VM and it behaves like a blackbox. Adobe says that constant folding is for instance not applied by the compiler but by the VM. Then I wonder why a public static const still sucks so much performance.
Adobe says they have early binding in the VM but static method calls are much more expensive than instance calls. From my understanding they should be equal with early binding.

So if I can not trust the VM I have to trust the compiler because the compiler output (ABC) is what I can look at very easy. Of course Tamarin has been opensourced so you can also take a look at the &lt;code&gt;codegen&lt;/code&gt; folder but that is much more complicated than writing your own dasm.</description>
		<content:encoded><![CDATA[<p>I do not really get your point. I mean let&#8217;s face it. The key is that we want to write nice readable OOP code which is still performant. And if I write this<br />
<code>public function get x(): Number { return _x; }</code> a compiler or the runtime has to be smart enough to inline this call instead of calling a method.</p>
<p>Unfortunately I still have my problems with the VM and it behaves like a blackbox. Adobe says that constant folding is for instance not applied by the compiler but by the VM. Then I wonder why a public static const still sucks so much performance.<br />
Adobe says they have early binding in the VM but static method calls are much more expensive than instance calls. From my understanding they should be equal with early binding.</p>
<p>So if I can not trust the VM I have to trust the compiler because the compiler output (ABC) is what I can look at very easy. Of course Tamarin has been opensourced so you can also take a look at the <code>codegen</code> folder but that is much more complicated than writing your own dasm.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: BlueF</title>
		<link>http://blog.joa-ebert.com/2008/12/01/alchemy-actionscript-asc/comment-page-1/#comment-163543</link>
		<dc:creator>BlueF</dc:creator>
		<pubDate>Fri, 05 Dec 2008 04:12:58 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joa-ebert.com/?p=265#comment-163543</guid>
		<description>the Adobe official paper said that every object created will be stored in the memory no matter you use it or not.At this point adobe means that you should optimize your code BY YOURSELF.so the performance of ASC is REASONABLE?=.=

w/e,wish to get some mechanism allowing developer to write low-level code to improve the performance of as3.</description>
		<content:encoded><![CDATA[<p>the Adobe official paper said that every object created will be stored in the memory no matter you use it or not.At this point adobe means that you should optimize your code BY YOURSELF.so the performance of ASC is REASONABLE?=.=</p>
<p>w/e,wish to get some mechanism allowing developer to write low-level code to improve the performance of as3.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Manfred Karrer</title>
		<link>http://blog.joa-ebert.com/2008/12/01/alchemy-actionscript-asc/comment-page-1/#comment-163535</link>
		<dc:creator>Manfred Karrer</dc:creator>
		<pubDate>Thu, 04 Dec 2008 20:08:17 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joa-ebert.com/?p=265#comment-163535</guid>
		<description>great article! hope adobe will consider your statements and give us an optimized compiler soon.</description>
		<content:encoded><![CDATA[<p>great article! hope adobe will consider your statements and give us an optimized compiler soon.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mr.doob</title>
		<link>http://blog.joa-ebert.com/2008/12/01/alchemy-actionscript-asc/comment-page-1/#comment-163463</link>
		<dc:creator>Mr.doob</dc:creator>
		<pubDate>Tue, 02 Dec 2008 19:54:31 +0000</pubDate>
		<guid isPermaLink="false">http://blog.joa-ebert.com/?p=265#comment-163463</guid>
		<description>Very, very, very interesting Joa. Thanks for sharing your knowledge :) I&#039;ll have to try haXe at some point...</description>
		<content:encoded><![CDATA[<p>Very, very, very interesting Joa. Thanks for sharing your knowledge :) I&#8217;ll have to try haXe at some point&#8230;</p>
]]></content:encoded>
	</item>
</channel>
</rss>
