How do I even begin?

  1. You search CPAN, the central repository for Perl code. This is always the first step, because you are likely not the first person to try your task. Unfortunately, no one has submitted any STDF modules to CPAN (yet).
  2. You search Google (classic) and Google Code. When I searched for combinations of Perl, STDF, and "Standard Test Data Format", I found (and ranked worst-to-best in my opinion):
    • FreeSTDF is an active project to manipulate STDF files.
      • It is written in C.
      • It is BSD-licensed.
    • PySTDF is a *very* active project to manipulate STDF files.
      • It is written in Python.
      • It is an event-based stream parser, and so may be too complex for your purposes.
      • It is GPL-licensed.
    • Michael Hackerott has a large ( >9000 lines) body of code to handle STDF files.
      • It is written in Perl.
      • It is dual-licensed like Perl: GPL and Artistic licenses.
      • There is one module, two programs that use the module, and two independent programs.
      • The code is, IMHO, of high quality.
      • It can output an XML-ized version of STDF, for use by other programs.
    • Datalog sells STDF4X, which bears a promising description:
      STDF Binary Datalog Reader - ... In addition to its powerful data locating and filtering features and easy to use GUI, the tool can be used with your favorite scripting language such as Perl or Python to automate the frequently performed tasks. ... Output is optimally formatted for further filtering with regular expressions.
      • It is a commercial product.
      • It has an option to recognize well-known STDF quirks from other vendors, and compensate for them.
      • I have no idea what it costs, but I would bet that, long-term, it is cheaper to buy it instead of writing or adapting equivalent code.
      • It is Windows-only, but you could use Samba or NFS to allow Windows and SunOS to both work on your files.

From looking at the STDF Specification and Michael Hackerott's code, I judge the format to be of difficulty 5 (out of 10, where 1 is tab separated values, and 10 is MPEG video {and SMB is 11}). The format is hairy enough that I would press Management to buy the STDF4X product, even if only to double-check that my Perl code was completely accurate.

Hope this helps, and good luck to you.


In reply to Re: Need Help: PERL and Binary Data by Util
in thread Need Help: PERL and Binary Data by mnj200g

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.