<?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: Elephants! is free on the App Store!</title>
	<atom:link href="http://www.philhassey.com/blog/2009/12/23/elephants-is-free-on-the-app-store/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.philhassey.com/blog/2009/12/23/elephants-is-free-on-the-app-store/</link>
	<description>game dev blog</description>
	<lastBuildDate>Fri, 06 Jan 2012 23:00:54 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
	<item>
		<title>By: philhassey</title>
		<link>http://www.philhassey.com/blog/2009/12/23/elephants-is-free-on-the-app-store/comment-page-1/#comment-22219</link>
		<dc:creator>philhassey</dc:creator>
		<pubDate>Mon, 28 Dec 2009 16:30:43 +0000</pubDate>
		<guid isPermaLink="false">http://www.philhassey.com/blog/?p=246#comment-22219</guid>
		<description>@Who Cares: yeah I&#039;ve been considering using Unity for some projects as well.  It&#039;d be even nicer if it had the support for Boo on the iPhone.

@Oscar: Well, I made tinypy, so that was a bit of bias.  I think if you look back a post here I cover some of my reasons.  I think the biggest one was that ShedSkin depends on libgc, which was a dependency I wanted to avoid.  I don&#039;t have any speed comparisons, but I do know that ShedSkin IS more like python than tinypyC++.  tinypyC++ requires annotation of all functions, whereas ShedSkin has the smarts to infer everything.</description>
		<content:encoded><![CDATA[<p>@Who Cares: yeah I&#8217;ve been considering using Unity for some projects as well.  It&#8217;d be even nicer if it had the support for Boo on the iPhone.</p>
<p>@Oscar: Well, I made tinypy, so that was a bit of bias.  I think if you look back a post here I cover some of my reasons.  I think the biggest one was that ShedSkin depends on libgc, which was a dependency I wanted to avoid.  I don&#8217;t have any speed comparisons, but I do know that ShedSkin IS more like python than tinypyC++.  tinypyC++ requires annotation of all functions, whereas ShedSkin has the smarts to infer everything.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Oscar</title>
		<link>http://www.philhassey.com/blog/2009/12/23/elephants-is-free-on-the-app-store/comment-page-1/#comment-22216</link>
		<dc:creator>Oscar</dc:creator>
		<pubDate>Sun, 27 Dec 2009 10:27:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.philhassey.com/blog/?p=246#comment-22216</guid>
		<description>Hi Phil, 

Did you consider using Shed Skin instead of tinypy? I have not really looked into it, but I&#039;d like to try using python for mosync (which only supports c/c++ at the moment). 

Did you do some comparison before you went with tinypy? In that case, it would be interesting to read about it.</description>
		<content:encoded><![CDATA[<p>Hi Phil, </p>
<p>Did you consider using Shed Skin instead of tinypy? I have not really looked into it, but I&#8217;d like to try using python for mosync (which only supports c/c++ at the moment). </p>
<p>Did you do some comparison before you went with tinypy? In that case, it would be interesting to read about it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Who Cares</title>
		<link>http://www.philhassey.com/blog/2009/12/23/elephants-is-free-on-the-app-store/comment-page-1/#comment-22211</link>
		<dc:creator>Who Cares</dc:creator>
		<pubDate>Fri, 25 Dec 2009 11:13:43 +0000</pubDate>
		<guid isPermaLink="false">http://www.philhassey.com/blog/?p=246#comment-22211</guid>
		<description>Hi there
I&#039;m surprised there is a way to create iPhone apps out of Phyton. Just wondering how hassle free you can compile and run it(?).
I was long into Pygame and hope to return once a day, still loving it!
In between I met Unity 3D, which went free recently (Indie version). It includes a very powerfull 3D engine (3D physics as well) and allows you do script in BooPython, Javascript and Mono. You really can build a game out of the &quot;Build&quot; button for Windows and Mac. For the iPhone you need an additional plugin, which cost some bugs. 
Altough you have to learn many things again (escpecially for 3D envs) it gives you the same feeling as Pygame (take out the pain of coding).
http://unity3d.com/</description>
		<content:encoded><![CDATA[<p>Hi there<br />
I&#8217;m surprised there is a way to create iPhone apps out of Phyton. Just wondering how hassle free you can compile and run it(?).<br />
I was long into Pygame and hope to return once a day, still loving it!<br />
In between I met Unity 3D, which went free recently (Indie version). It includes a very powerfull 3D engine (3D physics as well) and allows you do script in BooPython, Javascript and Mono. You really can build a game out of the &#8220;Build&#8221; button for Windows and Mac. For the iPhone you need an additional plugin, which cost some bugs.<br />
Altough you have to learn many things again (escpecially for 3D envs) it gives you the same feeling as Pygame (take out the pain of coding).<br />
<a href="http://unity3d.com/" rel="nofollow">http://unity3d.com/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: philhassey</title>
		<link>http://www.philhassey.com/blog/2009/12/23/elephants-is-free-on-the-app-store/comment-page-1/#comment-22206</link>
		<dc:creator>philhassey</dc:creator>
		<pubDate>Thu, 24 Dec 2009 16:24:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.philhassey.com/blog/?p=246#comment-22206</guid>
		<description>@Rene:

This game was originally written in python a few years ago (see www.imitationpickles.org/elephants/ ).  I took that code and ported it over.

I do give error messages for any improper types being used in tinypy, and for wrong number of parameters, etc.

However, within tinypy, an int and a float are both the same type.  This is for a number of reasons:

- in python3 (and in python2, to a lesser extent) ints can automagically get converted to floats pretty easily.  Having ints be a different type yielded non-pythonic results.
- Having them different types could give you some really painful situations, mainly in the case of passing a List(int) to a List(float), those types don&#039;t auto-convert in C++ (without extra code, anyways, which would add more overhead to all those calls)
- I do have explicit C types available, such as int16, uint32, etc, so if you REALLY want to use a C-int, you can.  I might also add float32 and float64 so you can choose between  those as well.

So yeah, you can do what you want, but for &quot;int&quot; and &quot;float&quot; I decided to keep the code as similar to python as possible.  When I &quot;release&quot; this project I&#039;ll have to write up some documentation (or copy this blog comment) emphasizing this point since it is a good question.  And probably the design decision that was the hardest to make.

-Phil</description>
		<content:encoded><![CDATA[<p>@Rene:</p>
<p>This game was originally written in python a few years ago (see <a href="http://www.imitationpickles.org/elephants/" rel="nofollow">http://www.imitationpickles.org/elephants/</a> ).  I took that code and ported it over.</p>
<p>I do give error messages for any improper types being used in tinypy, and for wrong number of parameters, etc.</p>
<p>However, within tinypy, an int and a float are both the same type.  This is for a number of reasons:</p>
<p>- in python3 (and in python2, to a lesser extent) ints can automagically get converted to floats pretty easily.  Having ints be a different type yielded non-pythonic results.<br />
- Having them different types could give you some really painful situations, mainly in the case of passing a List(int) to a List(float), those types don&#8217;t auto-convert in C++ (without extra code, anyways, which would add more overhead to all those calls)<br />
- I do have explicit C types available, such as int16, uint32, etc, so if you REALLY want to use a C-int, you can.  I might also add float32 and float64 so you can choose between  those as well.</p>
<p>So yeah, you can do what you want, but for &#8220;int&#8221; and &#8220;float&#8221; I decided to keep the code as similar to python as possible.  When I &#8220;release&#8221; this project I&#8217;ll have to write up some documentation (or copy this blog comment) emphasizing this point since it is a good question.  And probably the design decision that was the hardest to make.</p>
<p>-Phil</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rene Dudfield</title>
		<link>http://www.philhassey.com/blog/2009/12/23/elephants-is-free-on-the-app-store/comment-page-1/#comment-22205</link>
		<dc:creator>Rene Dudfield</dc:creator>
		<pubDate>Thu, 24 Dec 2009 07:49:30 +0000</pubDate>
		<guid isPermaLink="false">http://www.philhassey.com/blog/?p=246#comment-22205</guid>
		<description>Nice one Mr Hassey.  

The annotated python looks ok.

Just wondering if you prototyped first with cpython and then moved towards the tinypyC++ version?  I guess you iterated between the two.

Also, have you worked much on error messages?  At least so it can tell you what type a method is expecting?

I imagine this line:
    s.ball = ball_new(g,(int(s.rect.get_centerx()),int(s.rect.get_bottom())))

Could get the float returned by get_centerx() to cooerce into an int automatically perhaps.  However, I would kind of like int and float to be separate some times.


cu,</description>
		<content:encoded><![CDATA[<p>Nice one Mr Hassey.  </p>
<p>The annotated python looks ok.</p>
<p>Just wondering if you prototyped first with cpython and then moved towards the tinypyC++ version?  I guess you iterated between the two.</p>
<p>Also, have you worked much on error messages?  At least so it can tell you what type a method is expecting?</p>
<p>I imagine this line:<br />
    s.ball = ball_new(g,(int(s.rect.get_centerx()),int(s.rect.get_bottom())))</p>
<p>Could get the float returned by get_centerx() to cooerce into an int automatically perhaps.  However, I would kind of like int and float to be separate some times.</p>
<p>cu,</p>
]]></content:encoded>
	</item>
</channel>
</rss>

