Updated git docs
[sdlgit/SDL-Site.git] / pages / blog-0021.html-inc
index da0846f..a8a1632 100644 (file)
@@ -1,6 +1,6 @@
 <div class="blog">
 <h1 id="NAME">
-Catching memory leaks in XS
+Newbie Friendly Perl Projects
 </h1>
 <div class="CONTENT">
-<div style="text-align: right;"><i>&nbsp;I slay dragons, yonder</i></div><br />So I am trying to find and plug memory leaks in SDL perl. Most of the <a href="https://rt.cpan.org/Ticket/Display.html?id=49084">memory leaks</a> occur because in XS a reference is still held. One very expensive mem leak was caught by TELS really early on <a href="https://rt.cpan.org/Ticket/Display.html?id=17976">here</a>. The problem occurs where in XS there is<br /><br /><blockquote><i>RETVAL</i><i> = (cast *) safemalloc( ... );</i></blockquote>&nbsp;and safefree(...) is never called.<br />Here is a in <a href="http://github.com/kthakore/SDL_perl/blob/63ebaa682697728f5946f700a2b2c12534b1b821/src/SDL.xs">code example</a> lines 1082 on. <br /><br />My question is how I can mitigate these memory leaks? One idea I had was to store all malloc'd pointers to an array that is safefree'd on DESTROY or hooked into perl GC somehow .<br /><br /><br />Any guidance is helpful.<br /><br /><i>--yapgh</i><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3102167581424744259-7742659740534179607?l=yapgh.blogspot.com'/></div></div></div>
\ No newline at end of file
+<div style="text-align: right;"><i>A seed needs soft soil and water to grow</i></div><div style="text-align: right;"></div>This is a reply to <a href="http://szabgab.com/blog/2009/09/1251862435.html">szabgab's</a> post on how to get newbies interested in Perl modules. Being a newbie in Perl myself I thought I should take a shot.<br /><br />I was thinking you can make projects more accessible to newbies by having a step by step plan included with where they need to look. For example for docs of SDL_perl:<br /><ol><li>Look at SDL docs [<a href="http://www.libsdl.org/cgi/docwiki.cgi/SDL_API_by_name">link</a>]</li><li>See where SDL_perl is using the same functions [<a href="http://cpansearch.perl.org/src/KTHAKORE/SDL_Perl-v2.2.2.11/src/SDL.xs">link</a>] and the docs to this file [<a href="http://cpansearch.perl.org/src/KTHAKORE/SDL_Perl-v2.2.2.11/lib/SDL.pm">link</a>]</li><li>Use the pod format to add it to the source [<a href="http://perldoc.perl.org/perlpod.html">link to using pod</a>]</li><li>{BONUS} Come up with tutorial or cookbook [<a href="http://search.cpan.org/%7Edrolsky/Moose-0.89/lib/Moose/Cookbook.pod">link to example</a>]</li><li>Submit code to github [<a href="http://github.com/guides/home">link</a>] or email them to me [<a href="mailto:kthakore@cpan.org">link</a>]<br /></li></ol><br />Basically assume nothing is known. I know this may seem demeaning but I am a newbie to Perl and sometimes I hate looking for crust (docs). I call it crust because a crust is useful for me to eat a pizza slice, but it has no flavor .<br /><br /><i>--yapgh </i><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3102167581424744259-581981098917545448?l=yapgh.blogspot.com' alt='' /></div></div></div>
\ No newline at end of file