<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    hello all<br>
    <br>
    I personally always had difficulties with perl ...<br>
    the code is generally very hard to read, and the language brings
    very quickly to tricky optimization only experts understood<br>
    python is a more generic language, very easy to learn and if we make
    the right basic object definitions, it will help a lot for future
    improvement and code structure<br>
    at CEA our admin tools like shine or cluster-shell are python based
    and this choice allows us in getting scallable/reliable tools<br>
    For example, the initial version of shine (~6 years ago) was perl
    based and we were pleased to move to python for the new design<br>
    <br>
    The target is lustre developers (ie kernel developers), it will be
    much easier for them to learn python than perl.<br>
    it will also be easier for them to get the right "python" way of
    programming than the right "perl" way of programming<br>
    (in both cases the worst way is to use the new language as bash,
    which can arrive much quickly with perl than with python)<br>
    <br>
    about python, what do you mean by non standard installation ? <br>
    if your python configuration is right, the local differences should
    be hidden to the test framework<br>
    <br>
    Bye<br>
    <br>
    JC<br>
    <br>
    <div class="moz-cite-prefix">On 10/23/2012 08:36 PM, Nathan Rutman
      wrote:<br>
    </div>
    <blockquote
      cite="mid:9E235E88-FAD1-44BF-A4DC-12A5801E0467@xyratex.com"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html;
        charset=ISO-8859-1">
      <div>At LAD'12 we proposed a plan for improving the Lustre test
        framework as an important part of the Lustre quality story. &nbsp;One
        of the discussion points there was that the bash language of the
        current tests was lacking in a variety of areas. &nbsp;We're moving
        forward with this work but need community agreement on the best
        course. &nbsp;</div>
      <div><br>
      </div>
      <div>Given the requirements and language options below, the
        reasonable choices rapidly diminish to a showdown between perl
        and python. &nbsp;I think we're leaning at this point toward perl,
        based on it's superior speed and inter-version compatibility.
        &nbsp;The final piece of the puzzle is the knowledge of existing
        Lustre test writers, so please chime in. &nbsp;(But note that
        "popularity" is the reason we chose bash the first time, and
        look where that got us...)</div>
      <div><br>
      </div>
      <div>
        <div style="margin: 0px 0px 0px 12px; text-indent: -12px;
          font-size: 13px; font-family: Arial; color: rgb(81, 6, 0); "><span
            class="Apple-tab-span" style="white-space:pre"> </span>requirements</div>
        <div style="margin: 0px 0px 0px 30px; text-indent: -30px;
          font-size: 13px; font-family: Arial; color: rgb(108, 103, 1);
          "><span class="Apple-tab-span" style="white-space:pre"> </span>1.&nbsp;easy
          to use</div>
        <div style="margin: 0px 0px 0px 30px; text-indent: -30px;
          font-size: 13px; font-family: Arial; color: rgb(108, 103, 1);
          "><span class="Apple-tab-span" style="white-space:pre"> </span>2.&nbsp;strict
          structure</div>
        <div style="margin: 0px 0px 0px 30px; text-indent: -30px;
          font-size: 13px; font-family: Arial; color: rgb(108, 103, 1);
          "><span class="Apple-tab-span" style="white-space:pre"> </span>3.&nbsp;universally
          available</div>
        <div style="margin: 0px 0px 0px 30px; text-indent: -30px;
          font-size: 13px; font-family: Arial; color: rgb(108, 103, 1);
          "><span class="Apple-tab-span" style="white-space:pre"> </span>4.&nbsp;widely
          maintained</div>
        <div style="margin: 0px 0px 0px 30px; text-indent: -30px;
          font-size: 13px; font-family: Arial; color: rgb(108, 103, 1);
          "><span class="Apple-tab-span" style="white-space:pre"> </span>5.&nbsp;widely
          understood</div>
        <div style="margin: 0px 0px 0px 30px; text-indent: -30px;
          font-size: 13px; font-family: Arial; color: rgb(108, 103, 1);
          "><span class="Apple-tab-span" style="white-space:pre"> </span>6.&nbsp;good
          filesystem interface: posix API</div>
        <div style="margin: 0px 0px 0px 30px; text-indent: -30px;
          font-size: 13px; font-family: Arial; color: rgb(108, 103, 1);
          "><span class="Apple-tab-span" style="white-space:pre"> </span>7.&nbsp;fast
          - replace e.g. createmany with embedded function</div>
        <div style="margin: 0px 0px 0px 30px; text-indent: -30px;
          font-size: 13px; font-family: Arial; color: rgb(108, 103, 1);
          "><span class="Apple-tab-span" style="white-space:pre"> </span>8.&nbsp;operate
          remote instances</div>
        <div style="margin: 0px 0px 0px 30px; text-indent: -30px;
          font-size: 13px; font-family: Arial; color: rgb(108, 103, 1);
          "><span class="Apple-tab-span" style="white-space:pre"> </span>9.
          inter-version compatibility</div>
        <div style="margin: 0px 0px 0px 12px; text-indent: -12px;
          font-size: 13px; font-family: Arial; color: rgb(81, 6, 0); "><span
            class="Apple-tab-span" style="white-space:pre"> </span>options</div>
        <div style="margin: 0px 0px 0px 30px; text-indent: -30px;
          font-size: 13px; font-family: Arial; color: rgb(108, 103, 1);
          "><span class="Apple-tab-span" style="white-space:pre"> </span>bash
          - capable, but too flexible, easy to abuse</div>
        <div style="margin: 0px 0px 0px 30px; text-indent: -30px;
          font-size: 13px; font-family: Arial; color: rgb(108, 103, 1);
          "><span class="Apple-tab-span" style="white-space:pre"> </span>perl
          - forward compatible, universal, more widely understood,
          xperior, compact; hard to read later</div>
        <div style="margin: 0px 0px 0px 48px; text-indent: -48px;
          font-size: 13px; font-family: Arial; color: rgb(0, 105, 107);
          "><span class="Apple-tab-span" style="white-space:pre"> </span>posix::open,
          opendir, lseek, etc.</div>
        <div style="margin: 0px 0px 0px 66px; font-size: 11px; color:
          rgb(103, 103, 103); "><span class="Apple-tab-span"
            style="color: rgb(0, 105, 107); font-family: Arial;
            font-size: 13px; text-indent: -48px; white-space: pre; "> </span><span
            style="color: rgb(0, 105, 107); font-family: Arial;
            font-size: 13px; text-indent: -48px; ">parallel::MPI</span></div>
        <div style="margin: 0px 0px 0px 48px; text-indent: -48px;
          font-size: 13px; font-family: Arial; color: rgb(0, 105, 107);
          "><span class="Apple-tab-span" style="white-space:pre"> </span>~2x
          faster than python</div>
        <div style="margin: 0px 0px 0px 48px; text-indent: -48px;
          font-size: 13px; font-family: Arial; color: rgb(0, 105, 107);
          "><span class="Apple-tab-span" style="white-space:pre"> </span>more
          version compatible</div>
        <div style="margin: 0px 0px 0px 30px; text-indent: -30px;
          font-size: 13px; font-family: Arial; color: rgb(108, 103, 1);
          "><span class="Apple-tab-span" style="white-space:pre"> </span>python
          - very clear structure, swig module for c inclusion;
          non-standard installations, support</div>
        <div style="margin: 0px 0px 0px 48px; text-indent: -48px;
          font-size: 13px; font-family: Arial; color: rgb(0, 105, 107);
          "><span class="Apple-tab-span" style="white-space:pre"> </span>os.open:
          all c flags<span class="Apple-tab-span" style="white-space:
            pre; "> </span></div>
        <div style="margin: 0px 0px 0px 48px; text-indent: -48px;
          font-size: 13px; font-family: Arial; color: rgb(0, 105, 107);
          "><span class="Apple-tab-span" style="white-space: pre; "> </span>MPI
          bindings</div>
        <div style="margin: 0px 0px 0px 48px; text-indent: -48px;
          font-size: 13px; font-family: Arial; color: rgb(0, 105, 107);
          "><span class="Apple-tab-span" style="white-space:pre"> </span>tab/space
          requirements make remote editing more difficult</div>
        <div style="margin: 0px 0px 0px 30px; text-indent: -30px;
          font-size: 13px; font-family: Arial; color: rgb(108, 103, 1);
          "><span class="Apple-tab-span" style="white-space:pre"> </span>cucumber
          - ruby based, difficult deployment</div>
        <div style="margin: 0px 0px 0px 30px; text-indent: -30px;
          font-size: 13px; font-family: Arial; color: rgb(108, 103, 1);
          "><span class="Apple-tab-span" style="white-space:pre"> </span>java
          - easy deployment, dev environ, debugger, fast; must compile</div>
        <div style="margin: 0px 0px 0px 30px; text-indent: -30px;
          font-size: 13px; font-family: Arial; color: rgb(108, 103, 1);
          "><span class="Apple-tab-span" style="white-space:pre"> </span>ruby
          - compact</div>
      </div>
      <div><br>
      </div>
      <div><br>
      </div>
      <div>
        <div><a moz-do-not-send="true"
href="http://silicainsilico.wordpress.com/2012/03/26/switching-from-perl-to-python-speed/">http://silicainsilico.wordpress.com/2012/03/26/switching-from-perl-to-python-speed/</a></div>
        <div><a moz-do-not-send="true"
href="http://tenser.typepad.com/tenser_said_the_tensor/2006/08/python_vs_perl_.html">http://tenser.typepad.com/tenser_said_the_tensor/2006/08/python_vs_perl_.html</a></div>
        <div><a moz-do-not-send="true"
href="http://opennomad.com/content/performance-different-scripting-languages-shell-v-perl-v-python-v-ruby">http://opennomad.com/content/performance-different-scripting-languages-shell-v-perl-v-python-v-ruby</a></div>
        <div><a moz-do-not-send="true"
href="http://hentenaar.com/serendipity/index.php?/archives/27-Benchmark-PHP-vs.-Python-vs.-Perl-vs.-Ruby.html">http://hentenaar.com/serendipity/index.php?/archives/27-Benchmark-PHP-vs.-Python-vs.-Perl-vs.-Ruby.html</a></div>
      </div>
      <div><br>
      </div>
      <div><br>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
Lustre-devel mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Lustre-devel@lists.lustre.org">Lustre-devel@lists.lustre.org</a>
<a class="moz-txt-link-freetext" href="http://lists.lustre.org/mailman/listinfo/lustre-devel">http://lists.lustre.org/mailman/listinfo/lustre-devel</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>