<?xml version="1.0" encoding="utf-8" ?>
<rss version="2.0" xmlns:osnews="http://www.osnews.com/rss2#">
	<channel>
		<title>OSNews: </title>
		<link>http://www.osnews.com/story/11984/Shed_Skin_Python-to-C_Compiler_Released</link>
		<description>Exploring the Future of Computing</description>
		<language>en-us</language>
		<copyright>Copyright 2001-2013, David Adams</copyright>
		<webMaster>adam+nospam@osnews.com</webMaster>
		<lastBuildDate>Sat, 25 May 2013 15:49:12 GMT</lastBuildDate>
		<image>
			<url>http://www.osnews.com/images/osnews.gif</url>
			<title>OSNews.com</title>
			<link>http://www.osnews.com</link>
		</image>
		<item>
			<title>Great idea</title>
			<link>http://www.osnews.com/thread?35960</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?35960</guid>
			<description>The work looks promising for python and c++ programmers to combine the strength of both.</description>
			<pubDate>Sun, 25 Sep 2005 13:17:00 GMT</pubDate>
			<author>donotreply@osnews.com (Anonymous)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>Bash to C++ compiler would be useful to</title>
			<link>http://www.osnews.com/thread?35966</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?35966</guid>
			<description>I'm fed up with slow bash/perl/whatever system scripts. When init starts or scripts do some heavy processing, it's slooooooooow. Something that _should_ work good in theory IMO almost always sucks in the real world.</description>
			<pubDate>Sun, 25 Sep 2005 13:39:00 GMT</pubDate>
			<author>donotreply@osnews.com (agentj)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>McAfee reports malware found in shedskin-0.0.3.exe</title>
			<link>http://www.osnews.com/thread?35967</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?35967</guid>
			<description>McAfee reports malware found in shedskin-0.0.3.exe. The name of malware is &quot;New Malware.n&quot;</description>
			<pubDate>Sun, 25 Sep 2005 13:42:00 GMT</pubDate>
			<author>donotreply@osnews.com (Anonymous)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>More info on ...</title>
			<link>http://www.osnews.com/thread?35970</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?35970</guid>
			<description><a href="http://shed-skin.blogspot.com/" rel="nofollow">http://shed-skin.blogspot.com/</a><br />
<br />
where you will know this is the thesis' work of Mark Dufour and the project was part of the Summer of Code projects from Google.<br />
<br />
Good work Mark.</description>
			<pubDate>Sun, 25 Sep 2005 14:00:00 GMT</pubDate>
			<author>donotreply@osnews.com (Anonymous)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>Call it &amp;quot;converter&amp;quot; not &amp;quot;compiler&amp;quot;</title>
			<link>http://www.osnews.com/thread?35972</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?35972</guid>
			<description>actually this tool seems to be a source-code parser and converter.<br />
<br />
sLiCeR</description>
			<pubDate>Sun, 25 Sep 2005 14:01:00 GMT</pubDate>
			<author>donotreply@osnews.com (Anonymous)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: Bash to C++ compiler would be useful to</title>
			<link>http://www.osnews.com/thread?35975</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?35975</guid>
			<description>If you have heavy processing that is performance critical, a scripting langauge may well limit performance.  That hardly makes scripting langauges useless.  Typically, a line of a high level scripting language can replace 5-10 lines of C or C++.  Since you have to pay for programming (time or money), scripting languages can be an efficient use of programmer time.<br />
<br />
Here we a developer giving us a free tool that allows us to write Python and get C++'s performance.  You have stated the obvious and he has done something to address the issue.</description>
			<pubDate>Sun, 25 Sep 2005 14:05:00 GMT</pubDate>
			<author>donotreply@osnews.com (Anonymous)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>Don't get too excited yet.</title>
			<link>http://www.osnews.com/thread?35986</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?35986</guid>
			<description>Don't get too excited yet. From what I understand this version supports only a C++ like subset of Python (whatever exactly that means) not the whole of Python. As cool as this is, and I really do think it is damn cool, I probably will still take some time before you can use it to convert a Python program that wasn't written with conversion to C++ in mind.</description>
			<pubDate>Sun, 25 Sep 2005 14:45:00 GMT</pubDate>
			<author>donotreply@osnews.com (Anonymous)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: McAfee reports malware found in shedskin-0.0.3.exe</title>
			<link>http://www.osnews.com/thread?35988</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?35988</guid>
			<description>It's probably a false positive. That happens often; Norton antivirus once diagnosed LILO as a dangerous virus some years ago. If you still feel uneasy, just don't install it.</description>
			<pubDate>Sun, 25 Sep 2005 14:49:00 GMT</pubDate>
			<author>donotreply@osnews.com (Anonymous)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[2]: Bash to C++ compiler would be useful to</title>
			<link>http://www.osnews.com/thread?36009</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?36009</guid>
			<description>I meant &quot;, too&quot; <img src="/images/emo/wink.gif" alt=";)" />  The tool is nice, and I think it should help moving away from executing e.g. data processing by the slow interpreter (those SuSE config scripts take forever to complete). Anyway, even nonoptimizing converter is good, because g++ will optimize the code if necessary.</description>
			<pubDate>Sun, 25 Sep 2005 16:03:00 GMT</pubDate>
			<author>donotreply@osnews.com (agentj)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>This opens a host of possibilities...</title>
			<link>http://www.osnews.com/thread?36010</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?36010</guid>
			<description>Many thanks to Mark Dufour. A very cool project. I wonder  if it might be possible to generalize something like this more, like converting Parrot Code, which is supposed to be an intermediate language for a slew of scripting languages, to C++, and thus take care of Python, Ruby, Smalltalk, etc in one step.</description>
			<pubDate>Sun, 25 Sep 2005 16:04:00 GMT</pubDate>
			<author>donotreply@osnews.com (Anonymous)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>PyPy</title>
			<link>http://www.osnews.com/thread?36017</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?36017</guid>
			<description>I think that other proyect that with some future is PyPy[1]: Python coded in Python. The basic idea is to try make a Python interpreter in Python, not in C like the original CPython. So you can work in a higer level lenguaje and try to make athomatic translator of Python into other languajes like C, LISP and the LLVM opcodes. Also the project will introduce some ideas developed in other projects like Stackless Python and Psyco (a Python JIT with some profiling)<br />
<br />
[1] <a href="http://codespeak.net/pypy/dist/pypy/doc/news.html" rel="nofollow">http://codespeak.net/pypy/dist/pypy/doc/news.html</a></description>
			<pubDate>Sun, 25 Sep 2005 16:22:00 GMT</pubDate>
			<author>donotreply@osnews.com (Anonymous)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: This opens a host of possibilities...</title>
			<link>http://www.osnews.com/thread?36041</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?36041</guid>
			<description>Parrot isn't that hot anymore. Most people in other language cams got their own thing, and lots of Perl people are falling out with the way things look for them (Perl 5 is dead, Perl 6 not in sight, and Parrot appears to be to bloated since it tries to produce a VM for all, but nobody is interested).<br />
The &gt;&gt;one VM for all</description>
			<pubDate>Sun, 25 Sep 2005 17:27:00 GMT</pubDate>
			<author>donotreply@osnews.com (Anonymous)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[2]: This opens a host of possibilities...</title>
			<link>http://www.osnews.com/thread?36048</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?36048</guid>
			<description>I think the cooling off of excitement over Parrot, Perl 6, and all of that is just due to people being sick of waiting for them to become production ready.  People need solutions now, and Parrot just isn't here yet.<br />
<br />
The &quot;one VM for all&quot; idea is extremely popular, look at all of the language implementations that run on .NET and the Java VM (including Iron Python and Jython respectively).  If you don't believe me, google for it.  Before you dismiss Jython, it is extremely popular, and stands a good chance of becoming part of a future Java release.<br />
<br />
The people bitching about .NET are mostly bitching because it is a Microsoft technology.  Everyone I know who has actually sat down and tried to write something in C# has been thoroughly impressed, it is an incredibly fluid and intuitive programming language.  I am by no means a Microsoft fanboy, but I will admit that Microsoft hit the nail on the head with C# and .NET.  It is a drastic improvement over traditional Windows development tools.  Another group of people who bitch about .NET are the VisualBasic developers, but that's just because MS made some major and not backwards compatible changes to their pet language, to shoehorn it into the .NET runtime.<br />
<br />
Another argument for &quot;one VM for all&quot; comes on the server side of things.  Say you need to run a Python app, a Perl app, a PHP app, and a Java app all on the same server.  Your memory usage is going to go through the roof, as are the number of processes you need to run.  (Yes I know PHP, Perl, and Python can be run via Apache modules, but you still get my point.)  Another problem is trying to get all of these disparate server processes to talk to each other in a clean manner.  Not to mention that from a network administrator's perspective, configuring, securing, and maintaining such a setup is nothing short of frustrating.</description>
			<pubDate>Sun, 25 Sep 2005 17:55:00 GMT</pubDate>
			<author>donotreply@osnews.com (the_trapper)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>I like the way Tcl and Perl do it...</title>
			<link>http://www.osnews.com/thread?36049</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?36049</guid>
			<description>Tcl has critcl and Perl has the Inline family of modules which let you run another language inside your script. Take Tcl and Critcl for example. If there is something you want to happen in C, you just put that code in your script do a &quot;package require critcl&quot; and boom that portion is passed to the C compiler creating calls that Tcl can use. Perl's Inline modules do just about the same thing.<br />
<br />
Perl:  <a href="http://search.cpan.org/~ingy/Inline-0.44/Inline.pod" rel="nofollow">http://search.cpan.org/~ingy/Inline-0.44/Inline.pod</a> <br />
Tcl: <a href="http://www.equi4.com/critcl.html" rel="nofollow">http://www.equi4.com/critcl.html</a></description>
			<pubDate>Sun, 25 Sep 2005 18:00:00 GMT</pubDate>
			<author>donotreply@osnews.com (Anonymous)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[3]: This opens a host of possibilities...</title>
			<link>http://www.osnews.com/thread?36070</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?36070</guid>
			<description>The idea of &gt;&gt;one VM for all&gt;one for all VM&gt;one VM for all</description>
			<pubDate>Sun, 25 Sep 2005 19:21:00 GMT</pubDate>
			<author>donotreply@osnews.com (Anonymous)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: Bash to C++ compiler would be useful to</title>
			<link>http://www.osnews.com/thread?36076</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?36076</guid>
			<description>The speed of Bash, etc, is almost never the actual problem. The actual problem is usually that system startup involves lots of disk I/O through a cold cache, which is pretty much the slowest thing you can do on a computer. Even if the script was 10x as fast, it'd still spend 99% of its time sleeping.</description>
			<pubDate>Sun, 25 Sep 2005 19:39:00 GMT</pubDate>
			<author>donotreply@osnews.com (rayiner)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[3]: This opens a host of possibilities...</title>
			<link>http://www.osnews.com/thread?36089</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?36089</guid>
			<description>The people bitching about .NET are mostly bitching because it is a Microsoft technology.<br />
<br />
Not exactly, even though I'm one of them I don't care if this MS tech or Sun tech or whoever tech<br />
<br />
Everyone I know who has actually sat down and tried to write something in C# has been thoroughly impressed, it is an incredibly fluid and intuitive programming language.<br />
<br />
Same thoughts exactly. That's why tried harder than other languages I tried<br />
<br />
I am by no means a Microsoft fanboy, but I will admit that Microsoft hit the nail on the head with C# and .NET. It is a drastic improvement over traditional Windows development tools.<br />
<br />
No arguing here, in fact I agree 100%<br />
<br />
Another group of people who bitch about .NET are the VisualBasic developers, but that's just because MS made some major and not backwards compatible changes to their pet language, to shoehorn it into the .NET runtime.<br />
<br />
Not me.<br />
<br />
Another argument for &quot;one VM for all&quot; comes on the server side of things. Say you need to run a Python app, a Perl app, a PHP app, and a Java app all on the same server. Your memory usage is going to go through the roof, as are the number of processes you need to run. (Yes I know PHP, Perl, and Python can be run via Apache modules, but you still get my point.) Another problem is trying to get all of these disparate server processes to talk to each other in a clean manner. Not to mention that from a network administrator's perspective, configuring, securing, and maintaining such a setup is nothing short of frustrating.<br />
<br />
Ok, here we are. I don't care how many VM or whatever. What turned me off .NET is sloppy memory handling. I wouldn't even care if I would write desktop software, but since I'm writing server services that run 365/24 and so far I must say I had no problems in maintaing this result. Even though C# and .NET are beatifull and everything else would lead only to benefit me I had to drop the whole thing. On heavy load every service just consumed all RAM and SWAP and only after that started dribling between working and cleaning (restarting whole thing was the only option). As long as you write application that has idle time everything is perfect, even application that has heavy load job like renderer for example causes no problems (all these applications don't have long run and most of the software time is idle time waiting on user input), there's always enough time for garbage collector to do its work and so it waits with this task until too late.<br />
<br />
The same as test of speed between C and .NET or Java (where magically java and .net won). Again, always they use allocating and freeing memory in their examples for the sole reason that freeing never happens in Java or .NET during timing (and it is time consuming), while C has a downside of actualy executing that. Same test with a lot bigger number shows the actual result. Just make in the same test a little change in for loop to go to 2^32 and speed test will become more accurate without doing any favours to any language<br />
<br />
Maybe it is just me, but I asked a lot of people and no answer and solution. The only answer I got was to drop .NET and went back to the languages where I can control everything. Now, anyways it is too late until my next project.<br />
<br />
Final thoughts: If I would be writing user apps I would probably (or more like 100%) move on .NET and Mono and I even suggest to people that do write them to look at Mono and MS.NET, but since this is not the case... well, you can't expect from me to not criticize something (that would be both java and .NET) that doesn't allow me what other languages allow without any hassle.</description>
			<pubDate>Sun, 25 Sep 2005 20:26:00 GMT</pubDate>
			<author>donotreply@osnews.com (somebody)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>No, it's a compiler</title>
			<link>http://www.osnews.com/thread?36098</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?36098</guid>
			<description>From page 1 of &quot;Compilers: Principles, Techniques, and Tools&quot;: <br />
&quot;Simply stated, a compiler is a program that reads a program written in one language - the source language - and translates it into an equivalent program in another language - the target language.&quot;<br />
<br />
So, python being the source language, and C++ the target language, this is a compiler by definition.</description>
			<pubDate>Sun, 25 Sep 2005 21:07:00 GMT</pubDate>
			<author>donotreply@osnews.com (jlarocco)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[2]: Bash to C++ compiler would be useful to</title>
			<link>http://www.osnews.com/thread?36132</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?36132</guid>
			<description>Very very good point.  The other problem is bootup is done in a serial fashion, even if apache is sleeping as it's starting up, nothing else can procede until it's done.  People like to bitch that python/perl/interpreted language X are slow and bloated.  If it were slow nobody would use it.</description>
			<pubDate>Sun, 25 Sep 2005 22:33:00 GMT</pubDate>
			<author>donotreply@osnews.com (ecko)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: Call it &amp;quot;converter&amp;quot; not &amp;quot;compiler&amp;quot;</title>
			<link>http://www.osnews.com/thread?36143</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?36143</guid>
			<description>a source-code parser and converter<br />
<br />
And what does a complier do then?</description>
			<pubDate>Sun, 25 Sep 2005 22:53:00 GMT</pubDate>
			<author>donotreply@osnews.com (John Nilsson)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>Wow</title>
			<link>http://www.osnews.com/thread?36146</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?36146</guid>
			<description>This is so cool!</description>
			<pubDate>Sun, 25 Sep 2005 23:01:00 GMT</pubDate>
			<author>donotreply@osnews.com (Anonymous)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>Finally!</title>
			<link>http://www.osnews.com/thread?36165</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?36165</guid>
			<description>APPLAUSE!!!!<br />
I've been waiting for a Python compiler for a LONG time!<br />
<br />
Congratulations Mark  <img src="/images/emo/smile.gif" alt=";)" /></description>
			<pubDate>Sun, 25 Sep 2005 23:49:00 GMT</pubDate>
			<author>donotreply@osnews.com (Anonymous)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>another alternative</title>
			<link>http://www.osnews.com/thread?36167</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?36167</guid>
			<description>For an alternative to python that already has the speed you get from static typing, see <a href="http://boo.codehaus.org/" rel="nofollow">http://boo.codehaus.org/</a><br />
<br />
Otherwise, see also Pyrex, which adds C types and static compilation to CPython itself.</description>
			<pubDate>Sun, 25 Sep 2005 23:54:00 GMT</pubDate>
			<author>donotreply@osnews.com (doug)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>shed skin converts to c++ and compiles to .exe</title>
			<link>http://www.osnews.com/thread?36193</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?36193</guid>
			<description>I've been trying Shed skin since the first day and and so far, I'm very impressed and satisfied.<br />
<br />
It's important to note that at its current stage, shed skin should be used to convert and compile python programs written in a relatively &quot;static&quot; style. That means that you should avoid dynamic features such as exec or eval. Also, you shouldn't change the type of a variable like this:<br />
<br />
a=5<br />
a='is now a string'<br />
<br />
Also, it worth mentioning that it is not possible to import modules or using the standard library at this moment, since any module should be written in the above mentioned static style in order to compile.<br />
In few words, try to design your program the same way you should when using a static language, but taking advantage of the beatufull and productive python syntax (no type declarations, readable code, etc).<br />
<br />
I'd also like to say that Mark has been very kind and responsive to my questions and he is very fast at fixing bugs and implementing missing features.<br />
He would also appreciate any help from interested developers to continue developinh Shed Skin.<br />
It seems that all the hard work and the basic functionality has already been done and implemented, but now a lot of work remains to be done for getting into details.<br />
As far as I could see, it would be very easy for experienced c++ and/or python programmers to contribute to the project.</description>
			<pubDate>Mon, 26 Sep 2005 01:54:00 GMT</pubDate>
			<author>donotreply@osnews.com (Anonymous)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE: Call it &amp;quot;converter&amp;quot; not &amp;quot;compiler&amp;quot;</title>
			<link>http://www.osnews.com/thread?36199</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?36199</guid>
			<description>actually it's more like a program transmogrifier</description>
			<pubDate>Mon, 26 Sep 2005 02:41:00 GMT</pubDate>
			<author>donotreply@osnews.com (Anonymous)</author>
			<category>Comments</category>
		</item>

		<item>
			<title>RE[2]: Call it &amp;quot;converter&amp;quot; not &amp;quot;compiler&amp;quot;</title>
			<link>http://www.osnews.com/thread?36289</link>
			<guid isPermaLink="true">http://www.osnews.com/thread?36289</guid>
			<description>What do you think a compiler is? This is a compiler, plain and simple. Lots of compilers target C instead of ASM, usually because that way they don't have to implement all the optimizations the C compiler does. They're still compilers.</description>
			<pubDate>Mon, 26 Sep 2005 07:23:00 GMT</pubDate>
			<author>donotreply@osnews.com (rayiner)</author>
			<category>Comments</category>
		</item>
	</channel>
</rss>
