<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Thu, Nov 5, 2015 at 1:06 AM, Ivan Pozdeev <span dir="ltr"><<a href="mailto:vano@mail.mipt.ru" target="_blank">vano@mail.mipt.ru</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><u></u>





<div>

<p>Sunday, November 1, 2015, 21:24:40 Slide:</p><span class="">
<p><br></p>
<div><table border="0" cellpadding="1" cellspacing="2" style="background-color:rgb(255,255,255)">
<tbody><tr valign="top">
<td width="1" style="background-color:rgb(0,0,255)"><br>
</td>
<td width="703">
<p><span>It seems like there has been a general lack of development on IronPython for the past little while. I know I have been super busy and I'm sure other developers have as well. Does anyone have any ideas on attracting new developers to start working on 1) fixing issues in the 2.7 line 2) get IP3.0 out the door? </span></p>
</td>
</tr>
</tbody></table>
</div>
<p><br></p>
<p><br></p>
</span><p>The only idea I have is: the primary candidate for fixing a bug is someone who is suffering from it.</p></div></blockquote><div>As much as I agree with that idea of, IronPython + DLR is about 300 000 lines of C# code, and not always implemented in a straightforward way (for good and not-so-good reasons). The set of people who know C#, Python, and all of the background knowledge to implement a compiler is pretty small.<br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div>
<p>Even if they can't fix it themselves (setting up a dev env is nontrivial, and IPy doesn't come with debug symbols to debug the stock instance), they can, at least, track the cause or be asked to provide a reproducible example.</p></div></blockquote><div>Simple test cases are the best thing, because they make it very easy to check if something is fixed.</div><div><br></div><div>Actually debugging IronPython, though, is a bit of an interesting skill. The Python code is converted to DLR trees which are then converted to interpreter instruction and finally to IL and JITted. There's no straightforward code to step through most of the time, unfortunately, so one has to get proficient at reading interpreter instructions and following it around.</div><div><br></div><div>I really need to link to <a href="http://aosabook.org/en/ironlang.html">http://aosabook.org/en/ironlang.html</a> more because it describes philosophy of IronPython quite well (if I may say so myself).</div><div><br></div><div>Finally, it shouldn't be that complex to set up an environment: clone it with git, `cd` into the directory and type `make`. This should build IronPython to all supported platforms and put them in bin. You can then run it using `bin/Debug/ipy.exe`.</div><div><br></div><div>- Jeff</div></div></div></div>