Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?

comment on

( #3333=superdoc: print w/replies, xml ) Need Help??
Its now been roughly two to three months since the Perl 5 Enterprise Project was announced and following its reference in a node recently, I decided to check on the development to date - For those unaware of the goals of the P5EE project, they are described in depth at the project homepage. To do this, I checked out the latest CVS copy of the P5EE source tree and had a read through the core package modules developed to late.

I must say however, that I was quite put off early into this process, when I found the following in the core P5EEx::Blue::P5EE module:

# eliminate warnings about uninitialized values $SIG{__WARN__} = sub { warn @_ unless $_[0] =~ /Use of uninitialized v +alue/};

This line, trapping the __WARN__ signal and preventing the output of warnings where undefined variables are being used, seems in direct contrast the the concept of developing proven and complete code for the enterprise environment. Furthermore, the use of this code is mentioned in the P5EE perlstyle.pod, but gives no explanation for its use. eg.

Warnings and Strict All code must compile and run cleanly with "use strict" enabled and the perl "-w" (warnings) option on. If you must do something that -w or strict complains about, there are workarounds, but the chances that you really need to do it that way are remote. The one exception is the "Use of uninitialized variable" warnings. We have those disabled in, so by including "use P5EE" you are disabling that warning in your code, too, and you don't need to worry about them.

To my mind such errors represent poor initiation of code variables or failed trapping of return values from functions - Aspects of coding which should not be ignored, especially within a production environment.

Further to this, many of the modules in place within the P5EEx development tree are only placeholders at this stage, outlining what it is hoped that they will eventually perform, but with little in the way of firm code.

Please don't misinterpret this review as an attack on the P5EE project - I think this is an excellent direction for development and have subscribed to the mailing list to get up to date with the development. However at this point in time, this project is still quite embryonic and there are style and development issues which still need to be addressed. Perhaps, it can be said that the ulterior purpose behind this node, besides that stated to comment on P5EE progress, is to encourage other monks to contribute on this project - There is much which needs to be done and much that we can do to contribute.


perl -e 's&&[@.]/&&s&.com.&_&&&print'

In reply to P5EE ... get involved! by rob_au

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

  • Are you posting in the right place? Check out Where do I post X? to know for sure.
  • Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
    <code> <a> <b> <big> <blockquote> <br /> <dd> <dl> <dt> <em> <font> <h1> <h2> <h3> <h4> <h5> <h6> <hr /> <i> <li> <nbsp> <ol> <p> <small> <strike> <strong> <sub> <sup> <table> <td> <th> <tr> <tt> <u> <ul>
  • Snippets of code should be wrapped in <code> tags not <pre> tags. In fact, <pre> tags should generally be avoided. If they must be used, extreme care should be taken to ensure that their contents do not have long lines (<70 chars), in order to prevent horizontal scrolling (and possible janitor intervention).
  • Want more info? How to link or or How to display code and escape characters are good places to start.
Log In?

What's my password?
Create A New User
Domain Nodelet?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others rifling through the Monastery: (5)
As of 2022-05-25 13:37 GMT
Find Nodes?
    Voting Booth?
    Do you prefer to work remotely?

    Results (90 votes). Check out past polls.