tag:blogger.com,1999:blog-14063458.post2745471856991052385..comments2024-03-14T00:19:46.449-07:00Comments on Shed Skin - A (restricted) Python-to-C++ Compiler: Minilight Compiledsrepmubhttp://www.blogger.com/profile/15831320699731673389noreply@blogger.comBlogger13125tag:blogger.com,1999:blog-14063458.post-6920899763214019642009-04-09T16:52:00.000-07:002009-04-09T16:52:00.000-07:00I had forgot to package the FLAGS file with Shedsk...I had forgot to package the FLAGS file with Shedskin 0.1, that was why the SVN version worked better for some scripts I tried it on... It's fixed now.<BR/><BR/>SVN works for me right now, and if needed, it's possible to package a specific revision, so a new release is not a problem and not a hurry.<BR/><BR/>I agree with your philosophy of keeping things simple, in terms of extra flags and parameters.<BR/><BR/>Thanks for being receptive for feedback!xyprotohttps://www.blogger.com/profile/12322006417042391733noreply@blogger.comtag:blogger.com,1999:blog-14063458.post-81984092423369052842009-04-09T16:27:00.000-07:002009-04-09T16:27:00.000-07:00This comment has been removed by the author.xyprotohttps://www.blogger.com/profile/12322006417042391733noreply@blogger.comtag:blogger.com,1999:blog-14063458.post-77781725765031006802009-04-09T01:05:00.000-07:002009-04-09T01:05:00.000-07:00which problems did SVN fix for you? please do let ...which problems did SVN fix for you? please do let me know, next time you have problems. almost everything I add or fix is based on feedback (also, mostly from a single person/bear!)<BR/><BR/>does SVN still work for you now? I made a 'big' change to type inference yesterday (ie, revert a typo that caused several example programs to fail..)<BR/><BR/>about packaging, would it be possible to wait two weeks..? I'm planning on releasing 0.1.1 RSN.<BR/><BR/>I'm not convinced a --compile option would add much compared to 'make' (think occam's razor.). also note that you can achieve your --small and --fast already with the -f option (to point shedskin to an alternative FLAGS file), which seems more flexible.srepmubhttps://www.blogger.com/profile/15831320699731673389noreply@blogger.comtag:blogger.com,1999:blog-14063458.post-38313725161256759322009-04-08T06:04:00.000-07:002009-04-08T06:04:00.000-07:00The SVN version of Shedskin fixes some problems I ...The SVN version of Shedskin fixes some problems I had with Shedskin v.0.1. Would it be possible to release the latest working version of Shedskin as "shedskin-latest", "shedskin-0.2", "shedskin-0.11" or something similar? That would make it easier to package the latest working version of Shedskin with the package name "shedskin". Thank you.<BR/><BR/>When it comes to makeflags, it would be really nifty to be able to supply "--small" or "--fast" that in turn used -Os or -O2, -march=native and other compiler options, depending on what would be quickest or smallest. Also, "--compile" to run make after shedskin was done would be helpful. Just an idea.<BR/><BR/>I've tried using Shedskin for a few small scripts, and it works great.xyprotohttps://www.blogger.com/profile/12322006417042391733noreply@blogger.comtag:blogger.com,1999:blog-14063458.post-23987313806243870032009-03-29T07:29:00.000-07:002009-03-29T07:29:00.000-07:00oh, and I used these GCC flags:-O3 -s -fprofile-us...oh, and I used these GCC flags:<BR/><BR/>-O3 -s -fprofile-use -msse2 -fomit-frame-pointer<BR/><BR/>profile-guided optimization: first run with fprofile-generate, then with -fprofile-use. this can make a real difference.srepmubhttps://www.blogger.com/profile/15831320699731673389noreply@blogger.comtag:blogger.com,1999:blog-14063458.post-71376370823062700512009-03-29T07:20:00.000-07:002009-03-29T07:20:00.000-07:00to get the 60 time speedup for minilight (see exam...to get the 60 time speedup for minilight (see examples/minilight in SVN), use the following options:<BR/><BR/>shedskin -irbw minilight.py<BR/><BR/>a new option, r, causes shedskin to use C rand() instead of the Python-compatible random engine. this alone makes the compiled minilight 30% faster.srepmubhttps://www.blogger.com/profile/15831320699731673389noreply@blogger.comtag:blogger.com,1999:blog-14063458.post-514290684916204312009-03-29T07:18:00.000-07:002009-03-29T07:18:00.000-07:00for those interested in ray tracers, I added anoth...for those interested in ray tracers, I added another one (that's 4 now) to the example set (examples/mao.py in SVN). it becomes about 70 times faster here:<BR/><BR/>http://lucille.atso-net.jp/aobench/srepmubhttps://www.blogger.com/profile/15831320699731673389noreply@blogger.comtag:blogger.com,1999:blog-14063458.post-10236685809206783832009-03-25T06:54:00.000-07:002009-03-25T06:54:00.000-07:00how about adding support for urllib then? :) for i...how about adding support for urllib then? :) for information on how to do this, please see the section 'calling c/c++ code' in the shedskin tutorial. you could always start by adding support for the functionality that you need..srepmubhttps://www.blogger.com/profile/15831320699731673389noreply@blogger.comtag:blogger.com,1999:blog-14063458.post-58894340617232186972009-03-24T14:00:00.000-07:002009-03-24T14:00:00.000-07:00I like what you're doing withshedskin. My disappo...I like what you're doing with<BR/>shedskin. My disappointment right now is that the urllib module hasn't been implemented yet (at least not in the version I have). I had to use py2exe to get an executable for a short little python script. That's not nearly as nice as using shedskin, which I've successfully used before.<BR/><BR/>I'ld be interested in helping out on shedskin.kanaryhttps://www.blogger.com/profile/05232406219077971181noreply@blogger.comtag:blogger.com,1999:blog-14063458.post-73332213137358833132009-03-24T02:04:00.000-07:002009-03-24T02:04:00.000-07:00thanks! the biggest hurdle in supporting map (and ...thanks! the biggest hurdle in supporting map (and filter, apply, reduce, coerce and whatnot..) is probably psychological though: I really don't like them, and would prefer them to be completely removed from the Python language. another reason they don't have priority with me is that they can usually be rewritten more nicely using list comprehensions..srepmubhttps://www.blogger.com/profile/15831320699731673389noreply@blogger.comtag:blogger.com,1999:blog-14063458.post-54119365140277393112009-03-24T01:24:00.000-07:002009-03-24T01:24:00.000-07:00hi,very cool :)I have an implementation of map in ...hi,<BR/><BR/>very cool :)<BR/><BR/>I have an implementation of map in python if that helps? Then that could be compiled with shedskin hopefully - for shedskin speed map!<BR/><BR/>With psyco, I get a faster map than cpythons map with it.<BR/><BR/>Details, and downloads here:<BR/>http://renesd.blogspot.com/2006/12/python-map-vs-c-map.html<BR/><BR/>It's probably not complete... but works well enough for me.<BR/><BR/>cu.René Dudfieldhttps://www.blogger.com/profile/17762358075557755436noreply@blogger.comtag:blogger.com,1999:blog-14063458.post-83220060543826895952009-03-24T01:20:00.000-07:002009-03-24T01:20:00.000-07:00nice, thanks! maybe I can add the install command ...nice, thanks! maybe I can add the install command under archlinux to the tutorial?<BR/><BR/>type inference will probably never work for large non-standard libraries. but shedskin already allows you to generate extension modules, which should help integrate things in many cases.<BR/><BR/>this should work also for other GUI-type libraries, such as Qt: compile one or more speed-critical parts as extension modules, and import them in some main program, that can make full use of Python dynamism and arbitrary libraries.srepmubhttps://www.blogger.com/profile/15831320699731673389noreply@blogger.comtag:blogger.com,1999:blog-14063458.post-18006972362368927932009-03-23T19:40:00.000-07:002009-03-23T19:40:00.000-07:00Hi, I just wanted to say that I packaged shedskin ...Hi, I just wanted to say that I packaged shedskin and shedskin-svn for ArchLinux (in the AUR) and that your work is appreciated.<BR/><BR/>Personally, I think good support for pygame and pyopengl for shedskin would be great, as it would allow for many games to be written in Python+Shedskin instead of C++.<BR/><BR/>Thanksxyprotohttps://www.blogger.com/profile/12322006417042391733noreply@blogger.com