<?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: Game Scripting Languages</title>
	<atom:link href="http://codeplea.com/game-scripting-languages/feed" rel="self" type="application/rss+xml" />
	<link>http://codeplea.com/game-scripting-languages</link>
	<description>Random Thoughts on Programming</description>
	<lastBuildDate>Sun, 29 Apr 2012 10:12:54 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
	<item>
		<title>By: Jay Sherby &#187; Blog Archive &#187; Scripting Language Benchmarks Game</title>
		<link>http://codeplea.com/game-scripting-languages#comment-16599</link>
		<dc:creator>Jay Sherby &#187; Blog Archive &#187; Scripting Language Benchmarks Game</dc:creator>
		<pubDate>Fri, 16 Dec 2011 04:11:41 +0000</pubDate>
		<guid isPermaLink="false">http://codeplea.com/?p=54#comment-16599</guid>
		<description>[...] Some other languages I considered but ultimately rejected include Tcl, Pawn, Scheme, and AngelScript.  Tcl and Scheme are a bit too old and stagnant for my tastes.  Pawn and AngelScript both have negligible use in the real world, making support a considerable challenge.  Also, Pawn and AngelScript are so similar to C and C++ respectively that it makes the languages pretty boring.  I will note for the record, though, that Pawn has shown excellent results in others&#8217; benchmarks. [...]</description>
		<content:encoded><![CDATA[<p>[...] Some other languages I considered but ultimately rejected include Tcl, Pawn, Scheme, and AngelScript.  Tcl and Scheme are a bit too old and stagnant for my tastes.  Pawn and AngelScript both have negligible use in the real world, making support a considerable challenge.  Also, Pawn and AngelScript are so similar to C and C++ respectively that it makes the languages pretty boring.  I will note for the record, though, that Pawn has shown excellent results in others&#8217; benchmarks. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Lewis</title>
		<link>http://codeplea.com/game-scripting-languages#comment-8288</link>
		<dc:creator>Lewis</dc:creator>
		<pubDate>Mon, 23 May 2011 18:14:23 +0000</pubDate>
		<guid isPermaLink="false">http://codeplea.com/?p=54#comment-8288</guid>
		<description>I&#039;m planning on repeating the tests soon, and I&#039;ll release the full test harness when that happens.

I&#039;m staying pretty busy right now, though, so it may be a couple of months out, unfortunately.</description>
		<content:encoded><![CDATA[<p>I&#8217;m planning on repeating the tests soon, and I&#8217;ll release the full test harness when that happens.</p>
<p>I&#8217;m staying pretty busy right now, though, so it may be a couple of months out, unfortunately.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dotsquid</title>
		<link>http://codeplea.com/game-scripting-languages#comment-8275</link>
		<dc:creator>dotsquid</dc:creator>
		<pubDate>Mon, 23 May 2011 09:13:32 +0000</pubDate>
		<guid isPermaLink="false">http://codeplea.com/?p=54#comment-8275</guid>
		<description>Hi. Thanks for the article.
However I&#039;d like to join Deryck&#039;s request to repeat the tests.</description>
		<content:encoded><![CDATA[<p>Hi. Thanks for the article.<br />
However I&#8217;d like to join Deryck&#8217;s request to repeat the tests.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Deryck</title>
		<link>http://codeplea.com/game-scripting-languages#comment-7962</link>
		<dc:creator>Deryck</dc:creator>
		<pubDate>Sat, 14 May 2011 12:20:43 +0000</pubDate>
		<guid isPermaLink="false">http://codeplea.com/?p=54#comment-7962</guid>
		<description>Interesting results - I was considering using AngelScript for a game engine, mainly due to the ease of adding native functions to the scripting engine, but judging from these tests, Pawn looks like a great alternative in terms of raw performance.

Judging by Pekuja, though, it appears things have changed since when you posted this (2009?). Just wondering whether you could repeat the same tests with your test harness, or whether you could post your test harness up so we can test it ourselves under similar conditions?</description>
		<content:encoded><![CDATA[<p>Interesting results &#8211; I was considering using AngelScript for a game engine, mainly due to the ease of adding native functions to the scripting engine, but judging from these tests, Pawn looks like a great alternative in terms of raw performance.</p>
<p>Judging by Pekuja, though, it appears things have changed since when you posted this (2009?). Just wondering whether you could repeat the same tests with your test harness, or whether you could post your test harness up so we can test it ourselves under similar conditions?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alberto</title>
		<link>http://codeplea.com/game-scripting-languages#comment-6645</link>
		<dc:creator>Alberto</dc:creator>
		<pubDate>Sat, 09 Apr 2011 20:46:58 +0000</pubDate>
		<guid isPermaLink="false">http://codeplea.com/?p=54#comment-6645</guid>
		<description>Ok, I noticed that indeed MinGW creates executables that are 2 times the size compared to Visual Studio when using C++ but not when using C. 
So I played a bit with my makefiles and I brought the exe from 400Kb to 290Kb... (BTW static libs are still the same size)
First of all I found that I was compiling with C++ exception handling enabled, that squirrel doesn&#039;t use. Apparently hits performance and size very hard in GCC (Add -fno-exceptions in the GCC parameter list and TADA! good performance gain). 
Running a &quot;strip sq.exe&quot; (like lua) reduces size even more. I tried running &#039;strip&#039; on my libraries crashes strip.exe(at least the version I have).

So I apologize if I couldn&#039;t believe your results, it seems my GCC makefiles are way too simple and by default GCC leaves symbols both in static libraries and executables and they have to be stripped explicitly(my bad).

ciao
Alberto</description>
		<content:encoded><![CDATA[<p>Ok, I noticed that indeed MinGW creates executables that are 2 times the size compared to Visual Studio when using C++ but not when using C.<br />
So I played a bit with my makefiles and I brought the exe from 400Kb to 290Kb&#8230; (BTW static libs are still the same size)<br />
First of all I found that I was compiling with C++ exception handling enabled, that squirrel doesn&#8217;t use. Apparently hits performance and size very hard in GCC (Add -fno-exceptions in the GCC parameter list and TADA! good performance gain).<br />
Running a &#8220;strip sq.exe&#8221; (like lua) reduces size even more. I tried running &#8216;strip&#8217; on my libraries crashes strip.exe(at least the version I have).</p>
<p>So I apologize if I couldn&#8217;t believe your results, it seems my GCC makefiles are way too simple and by default GCC leaves symbols both in static libraries and executables and they have to be stripped explicitly(my bad).</p>
<p>ciao<br />
Alberto</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Pekuja</title>
		<link>http://codeplea.com/game-scripting-languages#comment-6099</link>
		<dc:creator>Pekuja</dc:creator>
		<pubDate>Sun, 27 Mar 2011 10:33:02 +0000</pubDate>
		<guid isPermaLink="false">http://codeplea.com/?p=54#comment-6099</guid>
		<description>I replicated some of the tests using latest versions of AngelScript, GameMonkey and Squirrel, as well as ChaiScript. I didn&#039;t do a compile to bytecode first though, but I think the effect should be mostly negligible. I&#039;ve posted my results on pastie.org as plain text for now: http://pastie.org/1721408

I actually got some pretty different results on some of the tests. AngelScript did a lot better in my tests. Squirrel also did better, and GameMonkey did a bit worse in some tests. ChaiScript was the slowest of the bunch overall, but did surprisingly well in comparison when passing large strings to native code.</description>
		<content:encoded><![CDATA[<p>I replicated some of the tests using latest versions of AngelScript, GameMonkey and Squirrel, as well as ChaiScript. I didn&#8217;t do a compile to bytecode first though, but I think the effect should be mostly negligible. I&#8217;ve posted my results on pastie.org as plain text for now: <a href="http://pastie.org/1721408" rel="nofollow">http://pastie.org/1721408</a></p>
<p>I actually got some pretty different results on some of the tests. AngelScript did a lot better in my tests. Squirrel also did better, and GameMonkey did a bit worse in some tests. ChaiScript was the slowest of the bunch overall, but did surprisingly well in comparison when passing large strings to native code.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Pekuja</title>
		<link>http://codeplea.com/game-scripting-languages#comment-6087</link>
		<dc:creator>Pekuja</dc:creator>
		<pubDate>Sat, 26 Mar 2011 23:33:02 +0000</pubDate>
		<guid isPermaLink="false">http://codeplea.com/?p=54#comment-6087</guid>
		<description>I found this blog post extremely interesting. I think it might be the only such benchmark around. Now, I was hoping to try and replicate the test with the latest versions, but you seem to have omitted the embedding C code from the package. Do you still have it?</description>
		<content:encoded><![CDATA[<p>I found this blog post extremely interesting. I think it might be the only such benchmark around. Now, I was hoping to try and replicate the test with the latest versions, but you seem to have omitted the embedding C code from the package. Do you still have it?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Lewis</title>
		<link>http://codeplea.com/game-scripting-languages#comment-5124</link>
		<dc:creator>Lewis</dc:creator>
		<pubDate>Wed, 02 Mar 2011 06:50:10 +0000</pubDate>
		<guid isPermaLink="false">http://codeplea.com/?p=54#comment-5124</guid>
		<description>Just a follow up: I re-compiled Lua and Squirrel again, to double-check my previous results.

The results from today are:
Lua Library: 197 KB
Lua Executable: 197 KB
Squirrel Library: 397KB (or 462 KB including sqstdlib)
Squirrel Executable: 377 KB

I compiled both Lua and Squirrel with the included Makefiles. It appears that both used optimization level 2 (-O2). My compiler is MinGW GCC 4.5.0 and the tested versions are Lua 5.1.4 and Squirrel 2.2.2.

I also reran my &quot;fib&quot; and &quot;prime&quot; benchmarks, and got results inline with my previous results.

If I have some free-time later in the week, I&#039;ll run some tests with Visual Studio. If I get different results, I&#039;ll let you know.</description>
		<content:encoded><![CDATA[<p>Just a follow up: I re-compiled Lua and Squirrel again, to double-check my previous results.</p>
<p>The results from today are:<br />
Lua Library: 197 KB<br />
Lua Executable: 197 KB<br />
Squirrel Library: 397KB (or 462 KB including sqstdlib)<br />
Squirrel Executable: 377 KB</p>
<p>I compiled both Lua and Squirrel with the included Makefiles. It appears that both used optimization level 2 (-O2). My compiler is MinGW GCC 4.5.0 and the tested versions are Lua 5.1.4 and Squirrel 2.2.2.</p>
<p>I also reran my &#8220;fib&#8221; and &#8220;prime&#8221; benchmarks, and got results inline with my previous results.</p>
<p>If I have some free-time later in the week, I&#8217;ll run some tests with Visual Studio. If I get different results, I&#8217;ll let you know.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Lewis</title>
		<link>http://codeplea.com/game-scripting-languages#comment-5101</link>
		<dc:creator>Lewis</dc:creator>
		<pubDate>Tue, 01 Mar 2011 21:09:59 +0000</pubDate>
		<guid isPermaLink="false">http://codeplea.com/?p=54#comment-5101</guid>
		<description>Thanks for your feedback, Alberto.

The libraries were compiled with GCC. I used the supplied Makefiles to compile both Lua and Squirrel. I will double check my comparisons between the two, and post back later.

I don&#039;t believe that looking a static library&#039;s size is &quot;nonsense.&quot; It is the total compiled size of all the code. If you link it to an executable, and stripped out any uncalled functions, then obviously the size should be smaller. In any case, I&#039;m displaying the information at face value, so readers should interpret it as they see fit.

If you think my performance tests are off &quot;big times,&quot; then please, by all means, download the code I used, and run it (at least run &quot;fib&quot; and &quot;prime&quot;). Report back the run-times for Lua vs Squirrel, and the tools/configurations you tested with. I&#039;d be happy to hear your results.

I&#039;m probably going to update this benchmark soon (it&#039;s a year and a half old), and publish all my scripted benchmarking code. Tell you what, I&#039;ll even compile some executables to compare library size with.

I&#039;m sorry if feel that this benchmark showed Squirrel in a bad light, but I am trying to be as unbiased as possible.</description>
		<content:encoded><![CDATA[<p>Thanks for your feedback, Alberto.</p>
<p>The libraries were compiled with GCC. I used the supplied Makefiles to compile both Lua and Squirrel. I will double check my comparisons between the two, and post back later.</p>
<p>I don&#8217;t believe that looking a static library&#8217;s size is &#8220;nonsense.&#8221; It is the total compiled size of all the code. If you link it to an executable, and stripped out any uncalled functions, then obviously the size should be smaller. In any case, I&#8217;m displaying the information at face value, so readers should interpret it as they see fit.</p>
<p>If you think my performance tests are off &#8220;big times,&#8221; then please, by all means, download the code I used, and run it (at least run &#8220;fib&#8221; and &#8220;prime&#8221;). Report back the run-times for Lua vs Squirrel, and the tools/configurations you tested with. I&#8217;d be happy to hear your results.</p>
<p>I&#8217;m probably going to update this benchmark soon (it&#8217;s a year and a half old), and publish all my scripted benchmarking code. Tell you what, I&#8217;ll even compile some executables to compare library size with.</p>
<p>I&#8217;m sorry if feel that this benchmark showed Squirrel in a bad light, but I am trying to be as unbiased as possible.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alberto</title>
		<link>http://codeplea.com/game-scripting-languages#comment-5097</link>
		<dc:creator>Alberto</dc:creator>
		<pubDate>Tue, 01 Mar 2011 17:59:56 +0000</pubDate>
		<guid isPermaLink="false">http://codeplea.com/?p=54#comment-5097</guid>
		<description>Your numbers on squirrel are quite off. On windows and VC++ 2010 squirrel is like +/- 2Kb compared to Lua.
Plus looking at a .lib file to determine the code footprint is non sense, you should look at linked executables expecially when comparing C++ and C libraries. And make sure you don&#039;t link the CRT statically.
Your preformance tests also seem rather off(big times). You should probably specify the tools/configurations you tested with.
(BTW I&#039;m Squirrel&#039;s author :) )</description>
		<content:encoded><![CDATA[<p>Your numbers on squirrel are quite off. On windows and VC++ 2010 squirrel is like +/- 2Kb compared to Lua.<br />
Plus looking at a .lib file to determine the code footprint is non sense, you should look at linked executables expecially when comparing C++ and C libraries. And make sure you don&#8217;t link the CRT statically.<br />
Your preformance tests also seem rather off(big times). You should probably specify the tools/configurations you tested with.<br />
(BTW I&#8217;m Squirrel&#8217;s author :) )</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Lewis</title>
		<link>http://codeplea.com/game-scripting-languages#comment-1106</link>
		<dc:creator>Lewis</dc:creator>
		<pubDate>Tue, 07 Sep 2010 17:42:48 +0000</pubDate>
		<guid isPermaLink="false">http://codeplea.com/?p=54#comment-1106</guid>
		<description>For this post I used Gnuplot. For some other projects I&#039;ve used Ploticus. They both work quite well.

The trick is to have everything scripted. I just hit go, all the tests are run, and the graphs are drawn.</description>
		<content:encoded><![CDATA[<p>For this post I used Gnuplot. For some other projects I&#8217;ve used Ploticus. They both work quite well.</p>
<p>The trick is to have everything scripted. I just hit go, all the tests are run, and the graphs are drawn.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: xorgman</title>
		<link>http://codeplea.com/game-scripting-languages#comment-1104</link>
		<dc:creator>xorgman</dc:creator>
		<pubDate>Tue, 07 Sep 2010 14:53:25 +0000</pubDate>
		<guid isPermaLink="false">http://codeplea.com/?p=54#comment-1104</guid>
		<description>What did you use to create the charts and graph?</description>
		<content:encoded><![CDATA[<p>What did you use to create the charts and graph?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Lewis</title>
		<link>http://codeplea.com/game-scripting-languages#comment-172</link>
		<dc:creator>Lewis</dc:creator>
		<pubDate>Thu, 04 Feb 2010 04:02:37 +0000</pubDate>
		<guid isPermaLink="false">http://codeplea.com/?p=54#comment-172</guid>
		<description>I recently discovered &lt;a href=&#039;http://jim.berlios.de/&#039; rel=&quot;nofollow&quot;&gt;The Jim Interpreter&lt;/a&gt;. It&#039;s a very small TCL implementation. If you like TCL (I do), it&#039;s definitely worth checking out.</description>
		<content:encoded><![CDATA[<p>I recently discovered <a href='http://jim.berlios.de/' rel="nofollow">The Jim Interpreter</a>. It&#8217;s a very small TCL implementation. If you like TCL (I do), it&#8217;s definitely worth checking out.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: benoit jacquier</title>
		<link>http://codeplea.com/game-scripting-languages#comment-63</link>
		<dc:creator>benoit jacquier</dc:creator>
		<pubDate>Fri, 23 Oct 2009 11:29:27 +0000</pubDate>
		<guid isPermaLink="false">http://codeplea.com/?p=54#comment-63</guid>
		<description>Thanks for the article!
However i did a small perf test with a fibonnaci function ( recursive ), and my result gives gamemonkey 2x faster than Lua 
Here with fibonnaci number: 43 
GameMonkey( 1.25 ): 151 sec
Lua ( 5.1.4 ) : 317 sec

Core 2 Duo / VS 2008</description>
		<content:encoded><![CDATA[<p>Thanks for the article!<br />
However i did a small perf test with a fibonnaci function ( recursive ), and my result gives gamemonkey 2x faster than Lua<br />
Here with fibonnaci number: 43<br />
GameMonkey( 1.25 ): 151 sec<br />
Lua ( 5.1.4 ) : 317 sec</p>
<p>Core 2 Duo / VS 2008</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joe Andresen</title>
		<link>http://codeplea.com/game-scripting-languages#comment-36</link>
		<dc:creator>Joe Andresen</dc:creator>
		<pubDate>Thu, 27 Aug 2009 17:08:56 +0000</pubDate>
		<guid isPermaLink="false">http://codeplea.com/?p=54#comment-36</guid>
		<description>That is a very nice article.  I use Lua for my stuff and have found the community to make the experience a lot better. A lot of my code/modules i use (lua pickle, lua interface, NumericLua, Event System) are from peoples public/free projects.  

You might also want to add Decoda as the debugger for Lua. It is literally like the Visual Studio debugger, and as long as your application has .pdb files it will work with embedded lua VMs. Here is a &lt;a href=&quot;http://www.unknownworlds.com/decoda/videos/&quot; rel=&quot;nofollow&quot;&gt;Video&lt;/a&gt; of how it works.</description>
		<content:encoded><![CDATA[<p>That is a very nice article.  I use Lua for my stuff and have found the community to make the experience a lot better. A lot of my code/modules i use (lua pickle, lua interface, NumericLua, Event System) are from peoples public/free projects.  </p>
<p>You might also want to add Decoda as the debugger for Lua. It is literally like the Visual Studio debugger, and as long as your application has .pdb files it will work with embedded lua VMs. Here is a <a href="http://www.unknownworlds.com/decoda/videos/" rel="nofollow">Video</a> of how it works.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

