<html><head></head><body><div class="ydp66550828yahoo-style-wrap" style="font-family: Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 10px;"><div></div>
        <div dir="ltr" data-setdir="false">In the past there was some C++ code in Biopython, but we spent quite a bit of time to replace it with C and Python code. Based on our experience in the past, I don't think we should go back to adding C++ code to Biopython. The main issues was ran into were:</div><div dir="ltr" data-setdir="false">- Compilation problems on different platforms. Python itself is written in C, and the same compilation flags that were used on a specific platform to compile Python itself are reused to compile C extension modules, making the process robust. We don't have this for C++.</div><div dir="ltr" data-setdir="false">- Not many people know how to write extension modules in C (which is fairly well described in the Python documentation); few people will know how to do this correctly in C++, especially with regard to memory management. You may be the only person who know how to do this, which means you would be the only person who could maintain such modules.<br></div><div dir="ltr" data-setdir="false">- The C++ modules we had were actually a mixture of C code and C++ code and did not always have a clean code design. <br></div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">For the sake of portability and maintainability, I think then that BIopython should follow PEP7 and use C (ANSI/ISO C with the C99 extensions defined in PEP7) only.</div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">-Michiel<br></div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false"><br></div></div><div id="ydp7c5eb0cbyahoo_quoted_9251470051" class="ydp7c5eb0cbyahoo_quoted">
            <div style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;color:#26282a;">
                
                <div>
                    On Sunday, August 30, 2020, 10:35:25 AM GMT+9, Huy Đức Lê <lehuyduc3@gmail.com> wrote:
                </div>
                <div><br></div>
                <div><br></div>
                <div><div id="ydp7c5eb0cbyiv9436688553"><div dir="ltr">if we can get 50%+ performance boost in some functions (such as sorting, or random generator), with minimal extra code? It's entirely possible to do it in C, but it'll be longer/harder to maintain. Unchanged code will keep the same speed.<div><br></div><div>We can stick to basic C++ features (templates, std::string, ...) to keep the C-like simplicity. C++11 would be best.<br><div><br></div><div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="ydp7c5eb0cbyiv9436688553gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><span><br><div dir="ltr" style="margin-left:0pt;"><table style="border-color: currentcolor; border-style: none; border-width: medium; border-collapse: collapse; width: 602px;"><colgroup><col><col></colgroup><tbody><tr style="min-height:0px;"><td style="border-left:solid #f3f3f3 0px;border-right:solid #f3f3f3 0px;border-bottom:solid #f3f3f3 0px;border-top:solid #f3f3f3 0px;vertical-align:top;padding:7px 7px 7px 7px;"><p dir="ltr" style="line-height:1.2;margin-top:0pt;margin-bottom:0pt;"><span style="font-size:14.6667px;font-family:Arial;color:rgb(0,0,0);vertical-align:baseline;white-space:pre-wrap;background-color:transparent;"><img src="https://lh6.googleusercontent.com/IJyoaP68AkF3BU3FlmFCX-EC0mBf7bG7a2i1k5DkNw0Cs9OA8ID3bAry0320i5cLqQF6hKHkhxkdZ1A8Ugi7gFp_tA7-tbnYjqHkKHPYsCZziS5Wpkuz9R1MBigVAq1moouwioho" style="border-color: currentcolor; border-style: none; border-width: medium; width: 156px; max-width: 156px;" alt="usth.jpg" data-inlineimagemanipulating="true"></span></p></td><td style="border-left:solid #f3f3f3 0px;border-right:solid #f3f3f3 0px;border-bottom:solid #f3f3f3 0px;border-top:solid #f3f3f3 0px;vertical-align:top;padding:7px 7px 7px 7px;"><p dir="ltr" style="line-height:1.7999999999999998;margin-top:0pt;margin-bottom:0pt;"><font face="arial, helvetica, sans-serif"><span style="font-size:12px;color:rgb(23,54,93);font-weight:700;vertical-align:baseline;white-space:pre-wrap;">Duc Le Huy </span><span style="font-size:12px;color:rgb(23,54,93);vertical-align:baseline;white-space:pre-wrap;">(Mr.)</span></font></p><p dir="ltr" style="line-height:1.7999999999999998;margin-top:0pt;margin-bottom:0pt;"><span style="font-size:12px;color:rgb(23,54,93);vertical-align:baseline;white-space:pre-wrap;"><font style="background-color: inherit;" face="arial, helvetica, sans-serif">Undergraduate student</font></span></p><p dir="ltr" style="line-height:2.0842105263157893;margin-top:0pt;margin-bottom:0pt;"><span style="font-size:12px;color:rgb(23,54,93);vertical-align:baseline;white-space:pre-wrap;"><font style="background-color: inherit;" face="arial, helvetica, sans-serif">ICT Faculty</font></span></p><p dir="ltr" style="line-height:1.7999999999999998;margin-top:0pt;margin-bottom:0pt;"><span style="font-size:12px;color:rgb(255,0,0);font-weight:700;vertical-align:baseline;white-space:pre-wrap;"><font style="background-color: inherit;" face="arial, helvetica, sans-serif">University of Science & Technology of Hanoi</font></span></p><p dir="ltr" style="line-height:1.7999999999999998;margin-top:0pt;margin-bottom:0pt;"><font face="arial, helvetica, sans-serif"><span style="font-size:12px;color:rgb(51,102,153);font-weight:700;vertical-align:baseline;white-space:pre-wrap;">Phone number :</span><span style="font-size:12px;color:rgb(51,102,153);vertical-align:baseline;white-space:pre-wrap;"> (+84) 918296356</span></font></p><p dir="ltr" style="line-height:1.3800027272727273;margin-top:0pt;margin-bottom:10pt;"><span style="font-size:12px;color:rgb(51,102,153);font-weight:700;vertical-align:baseline;white-space:pre-wrap;"><font style="background-color: inherit;" face="arial, helvetica, sans-serif">Email: <a href="mailto:lehuyduc3@gmail.com" rel="nofollow" target="_blank">lehuyduc3@gmail.com</a></font></span></p></td></tr></tbody></table></div></span></div></div></div></div></div></div></div></div></div></div>_______________________________________________<br>Biopython mailing list  -  <a href="mailto:Biopython@mailman.open-bio.org" rel="nofollow" target="_blank">Biopython@mailman.open-bio.org</a><br><a href="https://mailman.open-bio.org/mailman/listinfo/biopython" rel="nofollow" target="_blank">https://mailman.open-bio.org/mailman/listinfo/biopython</a></div>
            </div>
        </div></body></html>